"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const boundaries_1 = require("./boundaries");
const GraphemerHelper_1 = __importDefault(require("./GraphemerHelper"));
const GraphemerIterator_1 = __importDefault(require("./GraphemerIterator"));
class Graphemer {
    /**
     * Returns the next grapheme break in the string after the given index
     * @param string {string}
     * @param index {number}
     * @returns {number}
     */
    static nextBreak(string, index) {
        if (index === undefined) {
            index = 0;
        }
        if (index < 0) {
            return 0;
        }
        if (index >= string.length - 1) {
            return string.length;
        }
        const prevCP = GraphemerHelper_1.default.codePointAt(string, index);
        const prev = Graphemer.getGraphemeBreakProperty(prevCP);
        const prevEmoji = Graphemer.getEmojiProperty(prevCP);
        const mid = [];
        const midEmoji = [];
        for (let i = index + 1; i < string.length; i++) {
            // check for already processed low surrogates
            if (GraphemerHelper_1.default.isSurrogate(string, i - 1)) {
                continue;
            }
            const nextCP = GraphemerHelper_1.default.codePointAt(string, i);
            const next = Graphemer.getGraphemeBreakProperty(nextCP);
            const nextEmoji = Graphemer.getEmojiProperty(nextCP);
            if (GraphemerHelper_1.default.shouldBreak(prev, mid, next, prevEmoji, midEmoji, nextEmoji)) {
                return i;
            }
            mid.push(next);
            midEmoji.push(nextEmoji);
        }
        return string.length;
    }
    /**
     * Breaks the given string into an array of grapheme clusters
     * @param str {string}
     * @returns {string[]}
     */
    splitGraphemes(str) {
        const res = [];
        let index = 0;
        let brk;
        while ((brk = Graphemer.nextBreak(str, index)) < str.length) {
            res.push(str.slice(index, brk));
            index = brk;
        }
        if (index < str.length) {
            res.push(str.slice(index));
        }
        return res;
    }
    /**
     * Returns an iterator of grapheme clusters in the given string
     * @param str {string}
     * @returns {GraphemerIterator}
     */
    iterateGraphemes(str) {
        return new GraphemerIterator_1.default(str, Graphemer.nextBreak);
    }
    /**
     * Returns the number of grapheme clusters in the given string
     * @param str {string}
     * @returns {number}
     */
    countGraphemes(str) {
        let count = 0;
        let index = 0;
        let brk;
        while ((brk = Graphemer.nextBreak(str, index)) < str.length) {
            index = brk;
            count++;
        }
        if (index < str.length) {
            count++;
        }
        return count;
    }
    /**
     * Given a Unicode code point, determines this symbol's grapheme break property
     * @param code {number} Unicode code point
     * @returns {number}
     */
    static getGraphemeBreakProperty(code) {
        // Grapheme break property taken from:
        // https://www.unicode.org/Public/UCD/latest/ucd/auxiliary/GraphemeBreakProperty.txt
        // and generated by
        // node ./scripts/generate-grapheme-break.js
        if (code < 0xbf09) {
            if (code < 0xac54) {
                if (code < 0x102d) {
                    if (code < 0xb02) {
                        if (code < 0x93b) {
                            if (code < 0x6df) {
                                if (code < 0x5bf) {
                                    if (code < 0x7f) {
                                        if (code < 0xb) {
                                            if (code < 0xa) {
                                                // Cc  [10] <control-0000>..<control-0009>
                                                if (0x0 <= code && code <= 0x9) {
                                                    return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                }
                                            }
                                            else {
                                                // Cc       <control-000A>
                                                if (0xa === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LF;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd) {
                                                // Cc   [2] <control-000B>..<control-000C>
                                                if (0xb <= code && code <= 0xc) {
                                                    return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                }
                                            }
                                            else {
                                                if (code < 0xe) {
                                                    // Cc       <control-000D>
                                                    if (0xd === code) {
                                                        return boundaries_1.CLUSTER_BREAK.CR;
                                                    }
                                                }
                                                else {
                                                    // Cc  [18] <control-000E>..<control-001F>
                                                    if (0xe <= code && code <= 0x1f) {
                                                        return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x300) {
                                            if (code < 0xad) {
                                                // Cc  [33] <control-007F>..<control-009F>
                                                if (0x7f <= code && code <= 0x9f) {
                                                    return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                }
                                            }
                                            else {
                                                // Cf       SOFT HYPHEN
                                                if (0xad === code) {
                                                    return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x483) {
                                                // Mn [112] COMBINING GRAVE ACCENT..COMBINING LATIN SMALL LETTER X
                                                if (0x300 <= code && code <= 0x36f) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x591) {
                                                    // Mn   [5] COMBINING CYRILLIC TITLO..COMBINING CYRILLIC POKRYTIE
                                                    // Me   [2] COMBINING CYRILLIC HUNDRED THOUSANDS SIGN..COMBINING CYRILLIC MILLIONS SIGN
                                                    if (0x483 <= code && code <= 0x489) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn  [45] HEBREW ACCENT ETNAHTA..HEBREW POINT METEG
                                                    if (0x591 <= code && code <= 0x5bd) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x610) {
                                        if (code < 0x5c4) {
                                            if (code < 0x5c1) {
                                                // Mn       HEBREW POINT RAFE
                                                if (0x5bf === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn   [2] HEBREW POINT SHIN DOT..HEBREW POINT SIN DOT
                                                if (0x5c1 <= code && code <= 0x5c2) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x5c7) {
                                                // Mn   [2] HEBREW MARK UPPER DOT..HEBREW MARK LOWER DOT
                                                if (0x5c4 <= code && code <= 0x5c5) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x600) {
                                                    // Mn       HEBREW POINT QAMATS QATAN
                                                    if (0x5c7 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Cf   [6] ARABIC NUMBER SIGN..ARABIC NUMBER MARK ABOVE
                                                    if (0x600 <= code && code <= 0x605) {
                                                        return boundaries_1.CLUSTER_BREAK.PREPEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x670) {
                                            if (code < 0x61c) {
                                                // Mn  [11] ARABIC SIGN SALLALLAHOU ALAYHE WASSALLAM..ARABIC SMALL KASRA
                                                if (0x610 <= code && code <= 0x61a) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x64b) {
                                                    // Cf       ARABIC LETTER MARK
                                                    if (0x61c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                    }
                                                }
                                                else {
                                                    // Mn  [21] ARABIC FATHATAN..ARABIC WAVY HAMZA BELOW
                                                    if (0x64b <= code && code <= 0x65f) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x6d6) {
                                                // Mn       ARABIC LETTER SUPERSCRIPT ALEF
                                                if (0x670 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x6dd) {
                                                    // Mn   [7] ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA..ARABIC SMALL HIGH SEEN
                                                    if (0x6d6 <= code && code <= 0x6dc) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Cf       ARABIC END OF AYAH
                                                    if (0x6dd === code) {
                                                        return boundaries_1.CLUSTER_BREAK.PREPEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0x81b) {
                                    if (code < 0x730) {
                                        if (code < 0x6ea) {
                                            if (code < 0x6e7) {
                                                // Mn   [6] ARABIC SMALL HIGH ROUNDED ZERO..ARABIC SMALL HIGH MADDA
                                                if (0x6df <= code && code <= 0x6e4) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn   [2] ARABIC SMALL HIGH YEH..ARABIC SMALL HIGH NOON
                                                if (0x6e7 <= code && code <= 0x6e8) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x70f) {
                                                // Mn   [4] ARABIC EMPTY CENTRE LOW STOP..ARABIC SMALL LOW MEEM
                                                if (0x6ea <= code && code <= 0x6ed) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Cf       SYRIAC ABBREVIATION MARK
                                                if (0x70f === code) {
                                                    return boundaries_1.CLUSTER_BREAK.PREPEND;
                                                }
                                                // Mn       SYRIAC LETTER SUPERSCRIPT ALAPH
                                                if (0x711 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x7eb) {
                                            if (code < 0x7a6) {
                                                // Mn  [27] SYRIAC PTHAHA ABOVE..SYRIAC BARREKH
                                                if (0x730 <= code && code <= 0x74a) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn  [11] THAANA ABAFILI..THAANA SUKUN
                                                if (0x7a6 <= code && code <= 0x7b0) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x7fd) {
                                                // Mn   [9] NKO COMBINING SHORT HIGH TONE..NKO COMBINING DOUBLE DOT ABOVE
                                                if (0x7eb <= code && code <= 0x7f3) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x816) {
                                                    // Mn       NKO DANTAYALAN
                                                    if (0x7fd === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [4] SAMARITAN MARK IN..SAMARITAN MARK DAGESH
                                                    if (0x816 <= code && code <= 0x819) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x898) {
                                        if (code < 0x829) {
                                            if (code < 0x825) {
                                                // Mn   [9] SAMARITAN MARK EPENTHETIC YUT..SAMARITAN VOWEL SIGN A
                                                if (0x81b <= code && code <= 0x823) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn   [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U
                                                if (0x825 <= code && code <= 0x827) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x859) {
                                                // Mn   [5] SAMARITAN VOWEL SIGN LONG I..SAMARITAN MARK NEQUDAA
                                                if (0x829 <= code && code <= 0x82d) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x890) {
                                                    // Mn   [3] MANDAIC AFFRICATION MARK..MANDAIC GEMINATION MARK
                                                    if (0x859 <= code && code <= 0x85b) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Cf   [2] ARABIC POUND MARK ABOVE..ARABIC PIASTRE MARK ABOVE
                                                    if (0x890 <= code && code <= 0x891) {
                                                        return boundaries_1.CLUSTER_BREAK.PREPEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x8e3) {
                                            if (code < 0x8ca) {
                                                // Mn   [8] ARABIC SMALL HIGH WORD AL-JUZ..ARABIC HALF MADDA OVER MADDA
                                                if (0x898 <= code && code <= 0x89f) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x8e2) {
                                                    // Mn  [24] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH SIGN SAFHA
                                                    if (0x8ca <= code && code <= 0x8e1) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Cf       ARABIC DISPUTED END OF AYAH
                                                    if (0x8e2 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.PREPEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x903) {
                                                // Mn  [32] ARABIC TURNED DAMMA BELOW..DEVANAGARI SIGN ANUSVARA
                                                if (0x8e3 <= code && code <= 0x902) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc       DEVANAGARI SIGN VISARGA
                                                if (0x903 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                                // Mn       DEVANAGARI VOWEL SIGN OE
                                                if (0x93a === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0xa01) {
                                if (code < 0x982) {
                                    if (code < 0x94d) {
                                        if (code < 0x93e) {
                                            // Mc       DEVANAGARI VOWEL SIGN OOE
                                            if (0x93b === code) {
                                                return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                            }
                                            // Mn       DEVANAGARI SIGN NUKTA
                                            if (0x93c === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                        }
                                        else {
                                            if (code < 0x941) {
                                                // Mc   [3] DEVANAGARI VOWEL SIGN AA..DEVANAGARI VOWEL SIGN II
                                                if (0x93e <= code && code <= 0x940) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x949) {
                                                    // Mn   [8] DEVANAGARI VOWEL SIGN U..DEVANAGARI VOWEL SIGN AI
                                                    if (0x941 <= code && code <= 0x948) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [4] DEVANAGARI VOWEL SIGN CANDRA O..DEVANAGARI VOWEL SIGN AU
                                                    if (0x949 <= code && code <= 0x94c) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x951) {
                                            if (code < 0x94e) {
                                                // Mn       DEVANAGARI SIGN VIRAMA
                                                if (0x94d === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc   [2] DEVANAGARI VOWEL SIGN PRISHTHAMATRA E..DEVANAGARI VOWEL SIGN AW
                                                if (0x94e <= code && code <= 0x94f) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x962) {
                                                // Mn   [7] DEVANAGARI STRESS SIGN UDATTA..DEVANAGARI VOWEL SIGN UUE
                                                if (0x951 <= code && code <= 0x957) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x981) {
                                                    // Mn   [2] DEVANAGARI VOWEL SIGN VOCALIC L..DEVANAGARI VOWEL SIGN VOCALIC LL
                                                    if (0x962 <= code && code <= 0x963) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn       BENGALI SIGN CANDRABINDU
                                                    if (0x981 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x9c7) {
                                        if (code < 0x9be) {
                                            if (code < 0x9bc) {
                                                // Mc   [2] BENGALI SIGN ANUSVARA..BENGALI SIGN VISARGA
                                                if (0x982 <= code && code <= 0x983) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn       BENGALI SIGN NUKTA
                                                if (0x9bc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x9bf) {
                                                // Mc       BENGALI VOWEL SIGN AA
                                                if (0x9be === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x9c1) {
                                                    // Mc   [2] BENGALI VOWEL SIGN I..BENGALI VOWEL SIGN II
                                                    if (0x9bf <= code && code <= 0x9c0) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [4] BENGALI VOWEL SIGN U..BENGALI VOWEL SIGN VOCALIC RR
                                                    if (0x9c1 <= code && code <= 0x9c4) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x9d7) {
                                            if (code < 0x9cb) {
                                                // Mc   [2] BENGALI VOWEL SIGN E..BENGALI VOWEL SIGN AI
                                                if (0x9c7 <= code && code <= 0x9c8) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x9cd) {
                                                    // Mc   [2] BENGALI VOWEL SIGN O..BENGALI VOWEL SIGN AU
                                                    if (0x9cb <= code && code <= 0x9cc) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn       BENGALI SIGN VIRAMA
                                                    if (0x9cd === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x9e2) {
                                                // Mc       BENGALI AU LENGTH MARK
                                                if (0x9d7 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x9fe) {
                                                    // Mn   [2] BENGALI VOWEL SIGN VOCALIC L..BENGALI VOWEL SIGN VOCALIC LL
                                                    if (0x9e2 <= code && code <= 0x9e3) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn       BENGALI SANDHI MARK
                                                    if (0x9fe === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xa83) {
                                    if (code < 0xa47) {
                                        if (code < 0xa3c) {
                                            if (code < 0xa03) {
                                                // Mn   [2] GURMUKHI SIGN ADAK BINDI..GURMUKHI SIGN BINDI
                                                if (0xa01 <= code && code <= 0xa02) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc       GURMUKHI SIGN VISARGA
                                                if (0xa03 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xa3e) {
                                                // Mn       GURMUKHI SIGN NUKTA
                                                if (0xa3c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xa41) {
                                                    // Mc   [3] GURMUKHI VOWEL SIGN AA..GURMUKHI VOWEL SIGN II
                                                    if (0xa3e <= code && code <= 0xa40) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] GURMUKHI VOWEL SIGN U..GURMUKHI VOWEL SIGN UU
                                                    if (0xa41 <= code && code <= 0xa42) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xa70) {
                                            if (code < 0xa4b) {
                                                // Mn   [2] GURMUKHI VOWEL SIGN EE..GURMUKHI VOWEL SIGN AI
                                                if (0xa47 <= code && code <= 0xa48) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xa51) {
                                                    // Mn   [3] GURMUKHI VOWEL SIGN OO..GURMUKHI SIGN VIRAMA
                                                    if (0xa4b <= code && code <= 0xa4d) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn       GURMUKHI SIGN UDAAT
                                                    if (0xa51 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xa75) {
                                                // Mn   [2] GURMUKHI TIPPI..GURMUKHI ADDAK
                                                if (0xa70 <= code && code <= 0xa71) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xa81) {
                                                    // Mn       GURMUKHI SIGN YAKASH
                                                    if (0xa75 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] GUJARATI SIGN CANDRABINDU..GUJARATI SIGN ANUSVARA
                                                    if (0xa81 <= code && code <= 0xa82) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xac9) {
                                        if (code < 0xabe) {
                                            // Mc       GUJARATI SIGN VISARGA
                                            if (0xa83 === code) {
                                                return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                            }
                                            // Mn       GUJARATI SIGN NUKTA
                                            if (0xabc === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                        }
                                        else {
                                            if (code < 0xac1) {
                                                // Mc   [3] GUJARATI VOWEL SIGN AA..GUJARATI VOWEL SIGN II
                                                if (0xabe <= code && code <= 0xac0) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0xac7) {
                                                    // Mn   [5] GUJARATI VOWEL SIGN U..GUJARATI VOWEL SIGN CANDRA E
                                                    if (0xac1 <= code && code <= 0xac5) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] GUJARATI VOWEL SIGN E..GUJARATI VOWEL SIGN AI
                                                    if (0xac7 <= code && code <= 0xac8) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xae2) {
                                            if (code < 0xacb) {
                                                // Mc       GUJARATI VOWEL SIGN CANDRA O
                                                if (0xac9 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0xacd) {
                                                    // Mc   [2] GUJARATI VOWEL SIGN O..GUJARATI VOWEL SIGN AU
                                                    if (0xacb <= code && code <= 0xacc) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn       GUJARATI SIGN VIRAMA
                                                    if (0xacd === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xafa) {
                                                // Mn   [2] GUJARATI VOWEL SIGN VOCALIC L..GUJARATI VOWEL SIGN VOCALIC LL
                                                if (0xae2 <= code && code <= 0xae3) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xb01) {
                                                    // Mn   [6] GUJARATI SIGN SUKUN..GUJARATI SIGN TWO-CIRCLE NUKTA ABOVE
                                                    if (0xafa <= code && code <= 0xaff) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn       ORIYA SIGN CANDRABINDU
                                                    if (0xb01 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0xcf3) {
                            if (code < 0xc04) {
                                if (code < 0xb82) {
                                    if (code < 0xb47) {
                                        if (code < 0xb3e) {
                                            if (code < 0xb3c) {
                                                // Mc   [2] ORIYA SIGN ANUSVARA..ORIYA SIGN VISARGA
                                                if (0xb02 <= code && code <= 0xb03) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn       ORIYA SIGN NUKTA
                                                if (0xb3c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb40) {
                                                // Mc       ORIYA VOWEL SIGN AA
                                                // Mn       ORIYA VOWEL SIGN I
                                                if (0xb3e <= code && code <= 0xb3f) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xb41) {
                                                    // Mc       ORIYA VOWEL SIGN II
                                                    if (0xb40 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [4] ORIYA VOWEL SIGN U..ORIYA VOWEL SIGN VOCALIC RR
                                                    if (0xb41 <= code && code <= 0xb44) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb4d) {
                                            if (code < 0xb4b) {
                                                // Mc   [2] ORIYA VOWEL SIGN E..ORIYA VOWEL SIGN AI
                                                if (0xb47 <= code && code <= 0xb48) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mc   [2] ORIYA VOWEL SIGN O..ORIYA VOWEL SIGN AU
                                                if (0xb4b <= code && code <= 0xb4c) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb55) {
                                                // Mn       ORIYA SIGN VIRAMA
                                                if (0xb4d === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xb62) {
                                                    // Mn   [2] ORIYA SIGN OVERLINE..ORIYA AI LENGTH MARK
                                                    // Mc       ORIYA AU LENGTH MARK
                                                    if (0xb55 <= code && code <= 0xb57) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] ORIYA VOWEL SIGN VOCALIC L..ORIYA VOWEL SIGN VOCALIC LL
                                                    if (0xb62 <= code && code <= 0xb63) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xbc6) {
                                        if (code < 0xbbf) {
                                            // Mn       TAMIL SIGN ANUSVARA
                                            if (0xb82 === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                            // Mc       TAMIL VOWEL SIGN AA
                                            if (0xbbe === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                        }
                                        else {
                                            if (code < 0xbc0) {
                                                // Mc       TAMIL VOWEL SIGN I
                                                if (0xbbf === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0xbc1) {
                                                    // Mn       TAMIL VOWEL SIGN II
                                                    if (0xbc0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] TAMIL VOWEL SIGN U..TAMIL VOWEL SIGN UU
                                                    if (0xbc1 <= code && code <= 0xbc2) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xbd7) {
                                            if (code < 0xbca) {
                                                // Mc   [3] TAMIL VOWEL SIGN E..TAMIL VOWEL SIGN AI
                                                if (0xbc6 <= code && code <= 0xbc8) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0xbcd) {
                                                    // Mc   [3] TAMIL VOWEL SIGN O..TAMIL VOWEL SIGN AU
                                                    if (0xbca <= code && code <= 0xbcc) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn       TAMIL SIGN VIRAMA
                                                    if (0xbcd === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc00) {
                                                // Mc       TAMIL AU LENGTH MARK
                                                if (0xbd7 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xc01) {
                                                    // Mn       TELUGU SIGN COMBINING CANDRABINDU ABOVE
                                                    if (0xc00 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [3] TELUGU SIGN CANDRABINDU..TELUGU SIGN VISARGA
                                                    if (0xc01 <= code && code <= 0xc03) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xcbe) {
                                    if (code < 0xc4a) {
                                        if (code < 0xc3e) {
                                            // Mn       TELUGU SIGN COMBINING ANUSVARA ABOVE
                                            if (0xc04 === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                            // Mn       TELUGU SIGN NUKTA
                                            if (0xc3c === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                        }
                                        else {
                                            if (code < 0xc41) {
                                                // Mn   [3] TELUGU VOWEL SIGN AA..TELUGU VOWEL SIGN II
                                                if (0xc3e <= code && code <= 0xc40) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xc46) {
                                                    // Mc   [4] TELUGU VOWEL SIGN U..TELUGU VOWEL SIGN VOCALIC RR
                                                    if (0xc41 <= code && code <= 0xc44) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [3] TELUGU VOWEL SIGN E..TELUGU VOWEL SIGN AI
                                                    if (0xc46 <= code && code <= 0xc48) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc81) {
                                            if (code < 0xc55) {
                                                // Mn   [4] TELUGU VOWEL SIGN O..TELUGU SIGN VIRAMA
                                                if (0xc4a <= code && code <= 0xc4d) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xc62) {
                                                    // Mn   [2] TELUGU LENGTH MARK..TELUGU AI LENGTH MARK
                                                    if (0xc55 <= code && code <= 0xc56) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] TELUGU VOWEL SIGN VOCALIC L..TELUGU VOWEL SIGN VOCALIC LL
                                                    if (0xc62 <= code && code <= 0xc63) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc82) {
                                                // Mn       KANNADA SIGN CANDRABINDU
                                                if (0xc81 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xcbc) {
                                                    // Mc   [2] KANNADA SIGN ANUSVARA..KANNADA SIGN VISARGA
                                                    if (0xc82 <= code && code <= 0xc83) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn       KANNADA SIGN NUKTA
                                                    if (0xcbc === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xcc6) {
                                        if (code < 0xcc0) {
                                            // Mc       KANNADA VOWEL SIGN AA
                                            if (0xcbe === code) {
                                                return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                            }
                                            // Mn       KANNADA VOWEL SIGN I
                                            if (0xcbf === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                        }
                                        else {
                                            if (code < 0xcc2) {
                                                // Mc   [2] KANNADA VOWEL SIGN II..KANNADA VOWEL SIGN U
                                                if (0xcc0 <= code && code <= 0xcc1) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0xcc3) {
                                                    // Mc       KANNADA VOWEL SIGN UU
                                                    if (0xcc2 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] KANNADA VOWEL SIGN VOCALIC R..KANNADA VOWEL SIGN VOCALIC RR
                                                    if (0xcc3 <= code && code <= 0xcc4) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xccc) {
                                            if (code < 0xcc7) {
                                                // Mn       KANNADA VOWEL SIGN E
                                                if (0xcc6 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xcca) {
                                                    // Mc   [2] KANNADA VOWEL SIGN EE..KANNADA VOWEL SIGN AI
                                                    if (0xcc7 <= code && code <= 0xcc8) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO
                                                    if (0xcca <= code && code <= 0xccb) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcd5) {
                                                // Mn   [2] KANNADA VOWEL SIGN AU..KANNADA SIGN VIRAMA
                                                if (0xccc <= code && code <= 0xccd) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xce2) {
                                                    // Mc   [2] KANNADA LENGTH MARK..KANNADA AI LENGTH MARK
                                                    if (0xcd5 <= code && code <= 0xcd6) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] KANNADA VOWEL SIGN VOCALIC L..KANNADA VOWEL SIGN VOCALIC LL
                                                    if (0xce2 <= code && code <= 0xce3) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0xddf) {
                                if (code < 0xd4e) {
                                    if (code < 0xd3f) {
                                        if (code < 0xd02) {
                                            if (code < 0xd00) {
                                                // Mc       KANNADA SIGN COMBINING ANUSVARA ABOVE RIGHT
                                                if (0xcf3 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn   [2] MALAYALAM SIGN COMBINING ANUSVARA ABOVE..MALAYALAM SIGN CANDRABINDU
                                                if (0xd00 <= code && code <= 0xd01) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd3b) {
                                                // Mc   [2] MALAYALAM SIGN ANUSVARA..MALAYALAM SIGN VISARGA
                                                if (0xd02 <= code && code <= 0xd03) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0xd3e) {
                                                    // Mn   [2] MALAYALAM SIGN VERTICAL BAR VIRAMA..MALAYALAM SIGN CIRCULAR VIRAMA
                                                    if (0xd3b <= code && code <= 0xd3c) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc       MALAYALAM VOWEL SIGN AA
                                                    if (0xd3e === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xd46) {
                                            if (code < 0xd41) {
                                                // Mc   [2] MALAYALAM VOWEL SIGN I..MALAYALAM VOWEL SIGN II
                                                if (0xd3f <= code && code <= 0xd40) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn   [4] MALAYALAM VOWEL SIGN U..MALAYALAM VOWEL SIGN VOCALIC RR
                                                if (0xd41 <= code && code <= 0xd44) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd4a) {
                                                // Mc   [3] MALAYALAM VOWEL SIGN E..MALAYALAM VOWEL SIGN AI
                                                if (0xd46 <= code && code <= 0xd48) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0xd4d) {
                                                    // Mc   [3] MALAYALAM VOWEL SIGN O..MALAYALAM VOWEL SIGN AU
                                                    if (0xd4a <= code && code <= 0xd4c) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn       MALAYALAM SIGN VIRAMA
                                                    if (0xd4d === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xdca) {
                                        if (code < 0xd62) {
                                            // Lo       MALAYALAM LETTER DOT REPH
                                            if (0xd4e === code) {
                                                return boundaries_1.CLUSTER_BREAK.PREPEND;
                                            }
                                            // Mc       MALAYALAM AU LENGTH MARK
                                            if (0xd57 === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                        }
                                        else {
                                            if (code < 0xd81) {
                                                // Mn   [2] MALAYALAM VOWEL SIGN VOCALIC L..MALAYALAM VOWEL SIGN VOCALIC LL
                                                if (0xd62 <= code && code <= 0xd63) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xd82) {
                                                    // Mn       SINHALA SIGN CANDRABINDU
                                                    if (0xd81 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] SINHALA SIGN ANUSVARAYA..SINHALA SIGN VISARGAYA
                                                    if (0xd82 <= code && code <= 0xd83) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xdd2) {
                                            if (code < 0xdcf) {
                                                // Mn       SINHALA SIGN AL-LAKUNA
                                                if (0xdca === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xdd0) {
                                                    // Mc       SINHALA VOWEL SIGN AELA-PILLA
                                                    if (0xdcf === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] SINHALA VOWEL SIGN KETTI AEDA-PILLA..SINHALA VOWEL SIGN DIGA AEDA-PILLA
                                                    if (0xdd0 <= code && code <= 0xdd1) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xdd6) {
                                                // Mn   [3] SINHALA VOWEL SIGN KETTI IS-PILLA..SINHALA VOWEL SIGN KETTI PAA-PILLA
                                                if (0xdd2 <= code && code <= 0xdd4) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xdd8) {
                                                    // Mn       SINHALA VOWEL SIGN DIGA PAA-PILLA
                                                    if (0xdd6 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [7] SINHALA VOWEL SIGN GAETTA-PILLA..SINHALA VOWEL SIGN KOMBUVA HAA GAYANUKITTA
                                                    if (0xdd8 <= code && code <= 0xdde) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xf35) {
                                    if (code < 0xe47) {
                                        if (code < 0xe31) {
                                            if (code < 0xdf2) {
                                                // Mc       SINHALA VOWEL SIGN GAYANUKITTA
                                                if (0xddf === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc   [2] SINHALA VOWEL SIGN DIGA GAETTA-PILLA..SINHALA VOWEL SIGN DIGA GAYANUKITTA
                                                if (0xdf2 <= code && code <= 0xdf3) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xe33) {
                                                // Mn       THAI CHARACTER MAI HAN-AKAT
                                                if (0xe31 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xe34) {
                                                    // Lo       THAI CHARACTER SARA AM
                                                    if (0xe33 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [7] THAI CHARACTER SARA I..THAI CHARACTER PHINTHU
                                                    if (0xe34 <= code && code <= 0xe3a) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xeb4) {
                                            if (code < 0xeb1) {
                                                // Mn   [8] THAI CHARACTER MAITAIKHU..THAI CHARACTER YAMAKKAN
                                                if (0xe47 <= code && code <= 0xe4e) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn       LAO VOWEL SIGN MAI KAN
                                                if (0xeb1 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                                // Lo       LAO VOWEL SIGN AM
                                                if (0xeb3 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xec8) {
                                                // Mn   [9] LAO VOWEL SIGN I..LAO SEMIVOWEL SIGN LO
                                                if (0xeb4 <= code && code <= 0xebc) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xf18) {
                                                    // Mn   [7] LAO TONE MAI EK..LAO YAMAKKAN
                                                    if (0xec8 <= code && code <= 0xece) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] TIBETAN ASTROLOGICAL SIGN -KHYUD PA..TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS
                                                    if (0xf18 <= code && code <= 0xf19) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xf7f) {
                                        if (code < 0xf39) {
                                            // Mn       TIBETAN MARK NGAS BZUNG NYI ZLA
                                            if (0xf35 === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                            // Mn       TIBETAN MARK NGAS BZUNG SGOR RTAGS
                                            if (0xf37 === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                        }
                                        else {
                                            if (code < 0xf3e) {
                                                // Mn       TIBETAN MARK TSA -PHRU
                                                if (0xf39 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xf71) {
                                                    // Mc   [2] TIBETAN SIGN YAR TSHES..TIBETAN SIGN MAR TSHES
                                                    if (0xf3e <= code && code <= 0xf3f) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn  [14] TIBETAN VOWEL SIGN AA..TIBETAN SIGN RJES SU NGA RO
                                                    if (0xf71 <= code && code <= 0xf7e) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xf8d) {
                                            if (code < 0xf80) {
                                                // Mc       TIBETAN SIGN RNAM BCAD
                                                if (0xf7f === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0xf86) {
                                                    // Mn   [5] TIBETAN VOWEL SIGN REVERSED I..TIBETAN MARK HALANTA
                                                    if (0xf80 <= code && code <= 0xf84) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] TIBETAN SIGN LCI RTAGS..TIBETAN SIGN YANG RTAGS
                                                    if (0xf86 <= code && code <= 0xf87) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xf99) {
                                                // Mn  [11] TIBETAN SUBJOINED SIGN LCE TSA CAN..TIBETAN SUBJOINED LETTER JA
                                                if (0xf8d <= code && code <= 0xf97) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xfc6) {
                                                    // Mn  [36] TIBETAN SUBJOINED LETTER NYA..TIBETAN SUBJOINED LETTER FIXED-FORM RA
                                                    if (0xf99 <= code && code <= 0xfbc) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn       TIBETAN SYMBOL PADMA GDAN
                                                    if (0xfc6 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
                else {
                    if (code < 0x1c24) {
                        if (code < 0x1930) {
                            if (code < 0x1732) {
                                if (code < 0x1082) {
                                    if (code < 0x103d) {
                                        if (code < 0x1032) {
                                            if (code < 0x1031) {
                                                // Mn   [4] MYANMAR VOWEL SIGN I..MYANMAR VOWEL SIGN UU
                                                if (0x102d <= code && code <= 0x1030) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc       MYANMAR VOWEL SIGN E
                                                if (0x1031 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1039) {
                                                // Mn   [6] MYANMAR VOWEL SIGN AI..MYANMAR SIGN DOT BELOW
                                                if (0x1032 <= code && code <= 0x1037) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x103b) {
                                                    // Mn   [2] MYANMAR SIGN VIRAMA..MYANMAR SIGN ASAT
                                                    if (0x1039 <= code && code <= 0x103a) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] MYANMAR CONSONANT SIGN MEDIAL YA..MYANMAR CONSONANT SIGN MEDIAL RA
                                                    if (0x103b <= code && code <= 0x103c) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x1058) {
                                            if (code < 0x1056) {
                                                // Mn   [2] MYANMAR CONSONANT SIGN MEDIAL WA..MYANMAR CONSONANT SIGN MEDIAL HA
                                                if (0x103d <= code && code <= 0x103e) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc   [2] MYANMAR VOWEL SIGN VOCALIC R..MYANMAR VOWEL SIGN VOCALIC RR
                                                if (0x1056 <= code && code <= 0x1057) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x105e) {
                                                // Mn   [2] MYANMAR VOWEL SIGN VOCALIC L..MYANMAR VOWEL SIGN VOCALIC LL
                                                if (0x1058 <= code && code <= 0x1059) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1071) {
                                                    // Mn   [3] MYANMAR CONSONANT SIGN MON MEDIAL NA..MYANMAR CONSONANT SIGN MON MEDIAL LA
                                                    if (0x105e <= code && code <= 0x1060) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [4] MYANMAR VOWEL SIGN GEBA KAREN I..MYANMAR VOWEL SIGN KAYAH EE
                                                    if (0x1071 <= code && code <= 0x1074) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x1100) {
                                        if (code < 0x1085) {
                                            // Mn       MYANMAR CONSONANT SIGN SHAN MEDIAL WA
                                            if (0x1082 === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                            // Mc       MYANMAR VOWEL SIGN SHAN E
                                            if (0x1084 === code) {
                                                return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                            }
                                        }
                                        else {
                                            if (code < 0x108d) {
                                                // Mn   [2] MYANMAR VOWEL SIGN SHAN E ABOVE..MYANMAR VOWEL SIGN SHAN FINAL Y
                                                if (0x1085 <= code && code <= 0x1086) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn       MYANMAR SIGN SHAN COUNCIL EMPHATIC TONE
                                                if (0x108d === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                                // Mn       MYANMAR VOWEL SIGN AITON AI
                                                if (0x109d === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x135d) {
                                            if (code < 0x1160) {
                                                // Lo  [96] HANGUL CHOSEONG KIYEOK..HANGUL CHOSEONG FILLER
                                                if (0x1100 <= code && code <= 0x115f) {
                                                    return boundaries_1.CLUSTER_BREAK.L;
                                                }
                                            }
                                            else {
                                                if (code < 0x11a8) {
                                                    // Lo  [72] HANGUL JUNGSEONG FILLER..HANGUL JUNGSEONG O-YAE
                                                    if (0x1160 <= code && code <= 0x11a7) {
                                                        return boundaries_1.CLUSTER_BREAK.V;
                                                    }
                                                }
                                                else {
                                                    // Lo  [88] HANGUL JONGSEONG KIYEOK..HANGUL JONGSEONG SSANGNIEUN
                                                    if (0x11a8 <= code && code <= 0x11ff) {
                                                        return boundaries_1.CLUSTER_BREAK.T;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1712) {
                                                // Mn   [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK
                                                if (0x135d <= code && code <= 0x135f) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1715) {
                                                    // Mn   [3] TAGALOG VOWEL SIGN I..TAGALOG SIGN VIRAMA
                                                    if (0x1712 <= code && code <= 0x1714) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc       TAGALOG SIGN PAMUDPOD
                                                    if (0x1715 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0x17c9) {
                                    if (code < 0x17b6) {
                                        if (code < 0x1752) {
                                            if (code < 0x1734) {
                                                // Mn   [2] HANUNOO VOWEL SIGN I..HANUNOO VOWEL SIGN U
                                                if (0x1732 <= code && code <= 0x1733) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc       HANUNOO SIGN PAMUDPOD
                                                if (0x1734 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1772) {
                                                // Mn   [2] BUHID VOWEL SIGN I..BUHID VOWEL SIGN U
                                                if (0x1752 <= code && code <= 0x1753) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x17b4) {
                                                    // Mn   [2] TAGBANWA VOWEL SIGN I..TAGBANWA VOWEL SIGN U
                                                    if (0x1772 <= code && code <= 0x1773) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA
                                                    if (0x17b4 <= code && code <= 0x17b5) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x17be) {
                                            if (code < 0x17b7) {
                                                // Mc       KHMER VOWEL SIGN AA
                                                if (0x17b6 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn   [7] KHMER VOWEL SIGN I..KHMER VOWEL SIGN UA
                                                if (0x17b7 <= code && code <= 0x17bd) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x17c6) {
                                                // Mc   [8] KHMER VOWEL SIGN OE..KHMER VOWEL SIGN AU
                                                if (0x17be <= code && code <= 0x17c5) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x17c7) {
                                                    // Mn       KHMER SIGN NIKAHIT
                                                    if (0x17c6 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] KHMER SIGN REAHMUK..KHMER SIGN YUUKALEAPINTU
                                                    if (0x17c7 <= code && code <= 0x17c8) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x1885) {
                                        if (code < 0x180b) {
                                            if (code < 0x17dd) {
                                                // Mn  [11] KHMER SIGN MUUSIKATOAN..KHMER SIGN BATHAMASAT
                                                if (0x17c9 <= code && code <= 0x17d3) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn       KHMER SIGN ATTHACAN
                                                if (0x17dd === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x180e) {
                                                // Mn   [3] MONGOLIAN FREE VARIATION SELECTOR ONE..MONGOLIAN FREE VARIATION SELECTOR THREE
                                                if (0x180b <= code && code <= 0x180d) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Cf       MONGOLIAN VOWEL SEPARATOR
                                                if (0x180e === code) {
                                                    return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                }
                                                // Mn       MONGOLIAN FREE VARIATION SELECTOR FOUR
                                                if (0x180f === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x1923) {
                                            if (code < 0x18a9) {
                                                // Mn   [2] MONGOLIAN LETTER ALI GALI BALUDA..MONGOLIAN LETTER ALI GALI THREE BALUDA
                                                if (0x1885 <= code && code <= 0x1886) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1920) {
                                                    // Mn       MONGOLIAN LETTER ALI GALI DAGALGA
                                                    if (0x18a9 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [3] LIMBU VOWEL SIGN A..LIMBU VOWEL SIGN U
                                                    if (0x1920 <= code && code <= 0x1922) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1927) {
                                                // Mc   [4] LIMBU VOWEL SIGN EE..LIMBU VOWEL SIGN AU
                                                if (0x1923 <= code && code <= 0x1926) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x1929) {
                                                    // Mn   [2] LIMBU VOWEL SIGN E..LIMBU VOWEL SIGN O
                                                    if (0x1927 <= code && code <= 0x1928) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [3] LIMBU SUBJOINED LETTER YA..LIMBU SUBJOINED LETTER WA
                                                    if (0x1929 <= code && code <= 0x192b) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0x1b3b) {
                                if (code < 0x1a58) {
                                    if (code < 0x1a19) {
                                        if (code < 0x1933) {
                                            if (code < 0x1932) {
                                                // Mc   [2] LIMBU SMALL LETTER KA..LIMBU SMALL LETTER NGA
                                                if (0x1930 <= code && code <= 0x1931) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn       LIMBU SMALL LETTER ANUSVARA
                                                if (0x1932 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1939) {
                                                // Mc   [6] LIMBU SMALL LETTER TA..LIMBU SMALL LETTER LA
                                                if (0x1933 <= code && code <= 0x1938) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x1a17) {
                                                    // Mn   [3] LIMBU SIGN MUKPHRENG..LIMBU SIGN SA-I
                                                    if (0x1939 <= code && code <= 0x193b) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] BUGINESE VOWEL SIGN I..BUGINESE VOWEL SIGN U
                                                    if (0x1a17 <= code && code <= 0x1a18) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x1a55) {
                                            if (code < 0x1a1b) {
                                                // Mc   [2] BUGINESE VOWEL SIGN E..BUGINESE VOWEL SIGN O
                                                if (0x1a19 <= code && code <= 0x1a1a) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn       BUGINESE VOWEL SIGN AE
                                                if (0x1a1b === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1a56) {
                                                // Mc       TAI THAM CONSONANT SIGN MEDIAL RA
                                                if (0x1a55 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn       TAI THAM CONSONANT SIGN MEDIAL LA
                                                if (0x1a56 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                                // Mc       TAI THAM CONSONANT SIGN LA TANG LAI
                                                if (0x1a57 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x1a73) {
                                        if (code < 0x1a62) {
                                            if (code < 0x1a60) {
                                                // Mn   [7] TAI THAM SIGN MAI KANG LAI..TAI THAM CONSONANT SIGN SA
                                                if (0x1a58 <= code && code <= 0x1a5e) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn       TAI THAM SIGN SAKOT
                                                if (0x1a60 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1a65) {
                                                // Mn       TAI THAM VOWEL SIGN MAI SAT
                                                if (0x1a62 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1a6d) {
                                                    // Mn   [8] TAI THAM VOWEL SIGN I..TAI THAM VOWEL SIGN OA BELOW
                                                    if (0x1a65 <= code && code <= 0x1a6c) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [6] TAI THAM VOWEL SIGN OY..TAI THAM VOWEL SIGN THAM AI
                                                    if (0x1a6d <= code && code <= 0x1a72) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x1b00) {
                                            if (code < 0x1a7f) {
                                                // Mn  [10] TAI THAM VOWEL SIGN OA ABOVE..TAI THAM SIGN KHUEN-LUE KARAN
                                                if (0x1a73 <= code && code <= 0x1a7c) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1ab0) {
                                                    // Mn       TAI THAM COMBINING CRYPTOGRAMMIC DOT
                                                    if (0x1a7f === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn  [14] COMBINING DOUBLED CIRCUMFLEX ACCENT..COMBINING PARENTHESES BELOW
                                                    // Me       COMBINING PARENTHESES OVERLAY
                                                    // Mn  [16] COMBINING LATIN SMALL LETTER W BELOW..COMBINING LATIN SMALL LETTER INSULAR T
                                                    if (0x1ab0 <= code && code <= 0x1ace) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1b04) {
                                                // Mn   [4] BALINESE SIGN ULU RICEM..BALINESE SIGN SURANG
                                                if (0x1b00 <= code && code <= 0x1b03) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1b34) {
                                                    // Mc       BALINESE SIGN BISAH
                                                    if (0x1b04 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn       BALINESE SIGN REREKAN
                                                    // Mc       BALINESE VOWEL SIGN TEDUNG
                                                    // Mn   [5] BALINESE VOWEL SIGN ULU..BALINESE VOWEL SIGN RA REPA
                                                    if (0x1b34 <= code && code <= 0x1b3a) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0x1ba8) {
                                    if (code < 0x1b6b) {
                                        if (code < 0x1b3d) {
                                            // Mc       BALINESE VOWEL SIGN RA REPA TEDUNG
                                            if (0x1b3b === code) {
                                                return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                            }
                                            // Mn       BALINESE VOWEL SIGN LA LENGA
                                            if (0x1b3c === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                        }
                                        else {
                                            if (code < 0x1b42) {
                                                // Mc   [5] BALINESE VOWEL SIGN LA LENGA TEDUNG..BALINESE VOWEL SIGN TALING REPA TEDUNG
                                                if (0x1b3d <= code && code <= 0x1b41) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x1b43) {
                                                    // Mn       BALINESE VOWEL SIGN PEPET
                                                    if (0x1b42 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG
                                                    if (0x1b43 <= code && code <= 0x1b44) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x1ba1) {
                                            if (code < 0x1b80) {
                                                // Mn   [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG
                                                if (0x1b6b <= code && code <= 0x1b73) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1b82) {
                                                    // Mn   [2] SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PANGLAYAR
                                                    if (0x1b80 <= code && code <= 0x1b81) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc       SUNDANESE SIGN PANGWISAD
                                                    if (0x1b82 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1ba2) {
                                                // Mc       SUNDANESE CONSONANT SIGN PAMINGKAL
                                                if (0x1ba1 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x1ba6) {
                                                    // Mn   [4] SUNDANESE CONSONANT SIGN PANYAKRA..SUNDANESE VOWEL SIGN PANYUKU
                                                    if (0x1ba2 <= code && code <= 0x1ba5) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] SUNDANESE VOWEL SIGN PANAELAENG..SUNDANESE VOWEL SIGN PANOLONG
                                                    if (0x1ba6 <= code && code <= 0x1ba7) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x1be8) {
                                        if (code < 0x1bab) {
                                            if (code < 0x1baa) {
                                                // Mn   [2] SUNDANESE VOWEL SIGN PAMEPET..SUNDANESE VOWEL SIGN PANEULEUNG
                                                if (0x1ba8 <= code && code <= 0x1ba9) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc       SUNDANESE SIGN PAMAAEH
                                                if (0x1baa === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1be6) {
                                                // Mn   [3] SUNDANESE SIGN VIRAMA..SUNDANESE CONSONANT SIGN PASANGAN WA
                                                if (0x1bab <= code && code <= 0x1bad) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn       BATAK SIGN TOMPI
                                                if (0x1be6 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                                // Mc       BATAK VOWEL SIGN E
                                                if (0x1be7 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x1bee) {
                                            if (code < 0x1bea) {
                                                // Mn   [2] BATAK VOWEL SIGN PAKPAK E..BATAK VOWEL SIGN EE
                                                if (0x1be8 <= code && code <= 0x1be9) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1bed) {
                                                    // Mc   [3] BATAK VOWEL SIGN I..BATAK VOWEL SIGN O
                                                    if (0x1bea <= code && code <= 0x1bec) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn       BATAK VOWEL SIGN KARO O
                                                    if (0x1bed === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1bef) {
                                                // Mc       BATAK VOWEL SIGN U
                                                if (0x1bee === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x1bf2) {
                                                    // Mn   [3] BATAK VOWEL SIGN U FOR SIMALUNGUN SA..BATAK CONSONANT SIGN H
                                                    if (0x1bef <= code && code <= 0x1bf1) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] BATAK PANGOLAT..BATAK PANONGONAN
                                                    if (0x1bf2 <= code && code <= 0x1bf3) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0xa952) {
                            if (code < 0x2d7f) {
                                if (code < 0x1cf7) {
                                    if (code < 0x1cd4) {
                                        if (code < 0x1c34) {
                                            if (code < 0x1c2c) {
                                                // Mc   [8] LEPCHA SUBJOINED LETTER YA..LEPCHA VOWEL SIGN UU
                                                if (0x1c24 <= code && code <= 0x1c2b) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn   [8] LEPCHA VOWEL SIGN E..LEPCHA CONSONANT SIGN T
                                                if (0x1c2c <= code && code <= 0x1c33) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1c36) {
                                                // Mc   [2] LEPCHA CONSONANT SIGN NYIN-DO..LEPCHA CONSONANT SIGN KANG
                                                if (0x1c34 <= code && code <= 0x1c35) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x1cd0) {
                                                    // Mn   [2] LEPCHA SIGN RAN..LEPCHA SIGN NUKTA
                                                    if (0x1c36 <= code && code <= 0x1c37) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA
                                                    if (0x1cd0 <= code && code <= 0x1cd2) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x1ce2) {
                                            if (code < 0x1ce1) {
                                                // Mn  [13] VEDIC SIGN YAJURVEDIC MIDLINE SVARITA..VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA
                                                if (0x1cd4 <= code && code <= 0x1ce0) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc       VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA
                                                if (0x1ce1 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1ced) {
                                                // Mn   [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL
                                                if (0x1ce2 <= code && code <= 0x1ce8) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn       VEDIC SIGN TIRYAK
                                                if (0x1ced === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                                // Mn       VEDIC TONE CANDRA ABOVE
                                                if (0x1cf4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x200d) {
                                        if (code < 0x1dc0) {
                                            if (code < 0x1cf8) {
                                                // Mc       VEDIC SIGN ATIKRAMA
                                                if (0x1cf7 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn   [2] VEDIC TONE RING ABOVE..VEDIC TONE DOUBLE RING ABOVE
                                                if (0x1cf8 <= code && code <= 0x1cf9) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x200b) {
                                                // Mn  [64] COMBINING DOTTED GRAVE ACCENT..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW
                                                if (0x1dc0 <= code && code <= 0x1dff) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Cf       ZERO WIDTH SPACE
                                                if (0x200b === code) {
                                                    return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                }
                                                // Cf       ZERO WIDTH NON-JOINER
                                                if (0x200c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x2060) {
                                            if (code < 0x200e) {
                                                // Cf       ZERO WIDTH JOINER
                                                if (0x200d === code) {
                                                    return boundaries_1.CLUSTER_BREAK.ZWJ;
                                                }
                                            }
                                            else {
                                                if (code < 0x2028) {
                                                    // Cf   [2] LEFT-TO-RIGHT MARK..RIGHT-TO-LEFT MARK
                                                    if (0x200e <= code && code <= 0x200f) {
                                                        return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                    }
                                                }
                                                else {
                                                    // Zl       LINE SEPARATOR
                                                    // Zp       PARAGRAPH SEPARATOR
                                                    // Cf   [5] LEFT-TO-RIGHT EMBEDDING..RIGHT-TO-LEFT OVERRIDE
                                                    if (0x2028 <= code && code <= 0x202e) {
                                                        return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x20d0) {
                                                // Cf   [5] WORD JOINER..INVISIBLE PLUS
                                                // Cn       <reserved-2065>
                                                // Cf  [10] LEFT-TO-RIGHT ISOLATE..NOMINAL DIGIT SHAPES
                                                if (0x2060 <= code && code <= 0x206f) {
                                                    return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                }
                                            }
                                            else {
                                                if (code < 0x2cef) {
                                                    // Mn  [13] COMBINING LEFT HARPOON ABOVE..COMBINING FOUR DOTS ABOVE
                                                    // Me   [4] COMBINING ENCLOSING CIRCLE..COMBINING ENCLOSING CIRCLE BACKSLASH
                                                    // Mn       COMBINING LEFT RIGHT ARROW ABOVE
                                                    // Me   [3] COMBINING ENCLOSING SCREEN..COMBINING ENCLOSING UPWARD POINTING TRIANGLE
                                                    // Mn  [12] COMBINING REVERSE SOLIDUS OVERLAY..COMBINING ASTERISK ABOVE
                                                    if (0x20d0 <= code && code <= 0x20f0) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [3] COPTIC COMBINING NI ABOVE..COPTIC COMBINING SPIRITUS LENIS
                                                    if (0x2cef <= code && code <= 0x2cf1) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xa823) {
                                    if (code < 0xa674) {
                                        if (code < 0x302a) {
                                            if (code < 0x2de0) {
                                                // Mn       TIFINAGH CONSONANT JOINER
                                                if (0x2d7f === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn  [32] COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS
                                                if (0x2de0 <= code && code <= 0x2dff) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x3099) {
                                                // Mn   [4] IDEOGRAPHIC LEVEL TONE MARK..IDEOGRAPHIC ENTERING TONE MARK
                                                // Mc   [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK
                                                if (0x302a <= code && code <= 0x302f) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xa66f) {
                                                    // Mn   [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
                                                    if (0x3099 <= code && code <= 0x309a) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn       COMBINING CYRILLIC VZMET
                                                    // Me   [3] COMBINING CYRILLIC TEN MILLIONS SIGN..COMBINING CYRILLIC THOUSAND MILLIONS SIGN
                                                    if (0xa66f <= code && code <= 0xa672) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xa802) {
                                            if (code < 0xa69e) {
                                                // Mn  [10] COMBINING CYRILLIC LETTER UKRAINIAN IE..COMBINING CYRILLIC PAYEROK
                                                if (0xa674 <= code && code <= 0xa67d) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xa6f0) {
                                                    // Mn   [2] COMBINING CYRILLIC LETTER EF..COMBINING CYRILLIC LETTER IOTIFIED E
                                                    if (0xa69e <= code && code <= 0xa69f) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] BAMUM COMBINING MARK KOQNDON..BAMUM COMBINING MARK TUKWENTIS
                                                    if (0xa6f0 <= code && code <= 0xa6f1) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xa806) {
                                                // Mn       SYLOTI NAGRI SIGN DVISVARA
                                                if (0xa802 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn       SYLOTI NAGRI SIGN HASANTA
                                                if (0xa806 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                                // Mn       SYLOTI NAGRI SIGN ANUSVARA
                                                if (0xa80b === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xa8b4) {
                                        if (code < 0xa827) {
                                            if (code < 0xa825) {
                                                // Mc   [2] SYLOTI NAGRI VOWEL SIGN A..SYLOTI NAGRI VOWEL SIGN I
                                                if (0xa823 <= code && code <= 0xa824) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn   [2] SYLOTI NAGRI VOWEL SIGN U..SYLOTI NAGRI VOWEL SIGN E
                                                if (0xa825 <= code && code <= 0xa826) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xa82c) {
                                                // Mc       SYLOTI NAGRI VOWEL SIGN OO
                                                if (0xa827 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0xa880) {
                                                    // Mn       SYLOTI NAGRI SIGN ALTERNATE HASANTA
                                                    if (0xa82c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] SAURASHTRA SIGN ANUSVARA..SAURASHTRA SIGN VISARGA
                                                    if (0xa880 <= code && code <= 0xa881) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xa8ff) {
                                            if (code < 0xa8c4) {
                                                // Mc  [16] SAURASHTRA CONSONANT SIGN HAARU..SAURASHTRA VOWEL SIGN AU
                                                if (0xa8b4 <= code && code <= 0xa8c3) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0xa8e0) {
                                                    // Mn   [2] SAURASHTRA SIGN VIRAMA..SAURASHTRA SIGN CANDRABINDU
                                                    if (0xa8c4 <= code && code <= 0xa8c5) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn  [18] COMBINING DEVANAGARI DIGIT ZERO..COMBINING DEVANAGARI SIGN AVAGRAHA
                                                    if (0xa8e0 <= code && code <= 0xa8f1) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xa926) {
                                                // Mn       DEVANAGARI VOWEL SIGN AY
                                                if (0xa8ff === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xa947) {
                                                    // Mn   [8] KAYAH LI VOWEL UE..KAYAH LI TONE CALYA PLOPHU
                                                    if (0xa926 <= code && code <= 0xa92d) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn  [11] REJANG VOWEL SIGN I..REJANG CONSONANT SIGN R
                                                    if (0xa947 <= code && code <= 0xa951) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0xaab2) {
                                if (code < 0xa9e5) {
                                    if (code < 0xa9b4) {
                                        if (code < 0xa980) {
                                            if (code < 0xa960) {
                                                // Mc   [2] REJANG CONSONANT SIGN H..REJANG VIRAMA
                                                if (0xa952 <= code && code <= 0xa953) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Lo  [29] HANGUL CHOSEONG TIKEUT-MIEUM..HANGUL CHOSEONG SSANGYEORINHIEUH
                                                if (0xa960 <= code && code <= 0xa97c) {
                                                    return boundaries_1.CLUSTER_BREAK.L;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xa983) {
                                                // Mn   [3] JAVANESE SIGN PANYANGGA..JAVANESE SIGN LAYAR
                                                if (0xa980 <= code && code <= 0xa982) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc       JAVANESE SIGN WIGNYAN
                                                if (0xa983 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                                // Mn       JAVANESE SIGN CECAK TELU
                                                if (0xa9b3 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xa9ba) {
                                            if (code < 0xa9b6) {
                                                // Mc   [2] JAVANESE VOWEL SIGN TARUNG..JAVANESE VOWEL SIGN TOLONG
                                                if (0xa9b4 <= code && code <= 0xa9b5) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn   [4] JAVANESE VOWEL SIGN WULU..JAVANESE VOWEL SIGN SUKU MENDUT
                                                if (0xa9b6 <= code && code <= 0xa9b9) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xa9bc) {
                                                // Mc   [2] JAVANESE VOWEL SIGN TALING..JAVANESE VOWEL SIGN DIRGA MURE
                                                if (0xa9ba <= code && code <= 0xa9bb) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0xa9be) {
                                                    // Mn   [2] JAVANESE VOWEL SIGN PEPET..JAVANESE CONSONANT SIGN KERET
                                                    if (0xa9bc <= code && code <= 0xa9bd) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [3] JAVANESE CONSONANT SIGN PENGKAL..JAVANESE PANGKON
                                                    if (0xa9be <= code && code <= 0xa9c0) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xaa35) {
                                        if (code < 0xaa2f) {
                                            if (code < 0xaa29) {
                                                // Mn       MYANMAR SIGN SHAN SAW
                                                if (0xa9e5 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn   [6] CHAM VOWEL SIGN AA..CHAM VOWEL SIGN OE
                                                if (0xaa29 <= code && code <= 0xaa2e) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xaa31) {
                                                // Mc   [2] CHAM VOWEL SIGN O..CHAM VOWEL SIGN AI
                                                if (0xaa2f <= code && code <= 0xaa30) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0xaa33) {
                                                    // Mn   [2] CHAM VOWEL SIGN AU..CHAM VOWEL SIGN UE
                                                    if (0xaa31 <= code && code <= 0xaa32) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] CHAM CONSONANT SIGN YA..CHAM CONSONANT SIGN RA
                                                    if (0xaa33 <= code && code <= 0xaa34) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xaa4d) {
                                            if (code < 0xaa43) {
                                                // Mn   [2] CHAM CONSONANT SIGN LA..CHAM CONSONANT SIGN WA
                                                if (0xaa35 <= code && code <= 0xaa36) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn       CHAM CONSONANT SIGN FINAL NG
                                                if (0xaa43 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                                // Mn       CHAM CONSONANT SIGN FINAL M
                                                if (0xaa4c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xaa7c) {
                                                // Mc       CHAM CONSONANT SIGN FINAL H
                                                if (0xaa4d === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn       MYANMAR SIGN TAI LAING TONE-2
                                                if (0xaa7c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                                // Mn       TAI VIET MAI KANG
                                                if (0xaab0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xabe6) {
                                    if (code < 0xaaec) {
                                        if (code < 0xaabe) {
                                            if (code < 0xaab7) {
                                                // Mn   [3] TAI VIET VOWEL I..TAI VIET VOWEL U
                                                if (0xaab2 <= code && code <= 0xaab4) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn   [2] TAI VIET MAI KHIT..TAI VIET VOWEL IA
                                                if (0xaab7 <= code && code <= 0xaab8) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xaac1) {
                                                // Mn   [2] TAI VIET VOWEL AM..TAI VIET TONE MAI EK
                                                if (0xaabe <= code && code <= 0xaabf) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn       TAI VIET TONE MAI THO
                                                if (0xaac1 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                                // Mc       MEETEI MAYEK VOWEL SIGN II
                                                if (0xaaeb === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xaaf6) {
                                            if (code < 0xaaee) {
                                                // Mn   [2] MEETEI MAYEK VOWEL SIGN UU..MEETEI MAYEK VOWEL SIGN AAI
                                                if (0xaaec <= code && code <= 0xaaed) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xaaf5) {
                                                    // Mc   [2] MEETEI MAYEK VOWEL SIGN AU..MEETEI MAYEK VOWEL SIGN AAU
                                                    if (0xaaee <= code && code <= 0xaaef) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mc       MEETEI MAYEK VOWEL SIGN VISARGA
                                                    if (0xaaf5 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xabe3) {
                                                // Mn       MEETEI MAYEK VIRAMA
                                                if (0xaaf6 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xabe5) {
                                                    // Mc   [2] MEETEI MAYEK VOWEL SIGN ONAP..MEETEI MAYEK VOWEL SIGN INAP
                                                    if (0xabe3 <= code && code <= 0xabe4) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn       MEETEI MAYEK VOWEL SIGN ANAP
                                                    if (0xabe5 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xac00) {
                                        if (code < 0xabe9) {
                                            if (code < 0xabe8) {
                                                // Mc   [2] MEETEI MAYEK VOWEL SIGN YENAP..MEETEI MAYEK VOWEL SIGN SOUNAP
                                                if (0xabe6 <= code && code <= 0xabe7) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn       MEETEI MAYEK VOWEL SIGN UNAP
                                                if (0xabe8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xabec) {
                                                // Mc   [2] MEETEI MAYEK VOWEL SIGN CHEINAP..MEETEI MAYEK VOWEL SIGN NUNG
                                                if (0xabe9 <= code && code <= 0xabea) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mc       MEETEI MAYEK LUM IYEK
                                                if (0xabec === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                                // Mn       MEETEI MAYEK APUN IYEK
                                                if (0xabed === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xac1d) {
                                            if (code < 0xac01) {
                                                // Lo       HANGUL SYLLABLE GA
                                                if (0xac00 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xac1c) {
                                                    // Lo  [27] HANGUL SYLLABLE GAG..HANGUL SYLLABLE GAH
                                                    if (0xac01 <= code && code <= 0xac1b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE GAE
                                                    if (0xac1c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xac38) {
                                                // Lo  [27] HANGUL SYLLABLE GAEG..HANGUL SYLLABLE GAEH
                                                if (0xac1d <= code && code <= 0xac37) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xac39) {
                                                    // Lo       HANGUL SYLLABLE GYA
                                                    if (0xac38 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE GYAG..HANGUL SYLLABLE GYAH
                                                    if (0xac39 <= code && code <= 0xac53) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
            else {
                if (code < 0xb5a1) {
                    if (code < 0xb0ed) {
                        if (code < 0xaea0) {
                            if (code < 0xad6d) {
                                if (code < 0xace0) {
                                    if (code < 0xac8d) {
                                        if (code < 0xac70) {
                                            if (code < 0xac55) {
                                                // Lo       HANGUL SYLLABLE GYAE
                                                if (0xac54 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE GYAEG..HANGUL SYLLABLE GYAEH
                                                if (0xac55 <= code && code <= 0xac6f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xac71) {
                                                // Lo       HANGUL SYLLABLE GEO
                                                if (0xac70 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xac8c) {
                                                    // Lo  [27] HANGUL SYLLABLE GEOG..HANGUL SYLLABLE GEOH
                                                    if (0xac71 <= code && code <= 0xac8b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE GE
                                                    if (0xac8c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xaca9) {
                                            if (code < 0xaca8) {
                                                // Lo  [27] HANGUL SYLLABLE GEG..HANGUL SYLLABLE GEH
                                                if (0xac8d <= code && code <= 0xaca7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE GYEO
                                                if (0xaca8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xacc4) {
                                                // Lo  [27] HANGUL SYLLABLE GYEOG..HANGUL SYLLABLE GYEOH
                                                if (0xaca9 <= code && code <= 0xacc3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xacc5) {
                                                    // Lo       HANGUL SYLLABLE GYE
                                                    if (0xacc4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE GYEG..HANGUL SYLLABLE GYEH
                                                    if (0xacc5 <= code && code <= 0xacdf) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xad19) {
                                        if (code < 0xacfc) {
                                            if (code < 0xace1) {
                                                // Lo       HANGUL SYLLABLE GO
                                                if (0xace0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE GOG..HANGUL SYLLABLE GOH
                                                if (0xace1 <= code && code <= 0xacfb) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xacfd) {
                                                // Lo       HANGUL SYLLABLE GWA
                                                if (0xacfc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xad18) {
                                                    // Lo  [27] HANGUL SYLLABLE GWAG..HANGUL SYLLABLE GWAH
                                                    if (0xacfd <= code && code <= 0xad17) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE GWAE
                                                    if (0xad18 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xad50) {
                                            if (code < 0xad34) {
                                                // Lo  [27] HANGUL SYLLABLE GWAEG..HANGUL SYLLABLE GWAEH
                                                if (0xad19 <= code && code <= 0xad33) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xad35) {
                                                    // Lo       HANGUL SYLLABLE GOE
                                                    if (0xad34 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE GOEG..HANGUL SYLLABLE GOEH
                                                    if (0xad35 <= code && code <= 0xad4f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xad51) {
                                                // Lo       HANGUL SYLLABLE GYO
                                                if (0xad50 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xad6c) {
                                                    // Lo  [27] HANGUL SYLLABLE GYOG..HANGUL SYLLABLE GYOH
                                                    if (0xad51 <= code && code <= 0xad6b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE GU
                                                    if (0xad6c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xadf9) {
                                    if (code < 0xadc0) {
                                        if (code < 0xad89) {
                                            if (code < 0xad88) {
                                                // Lo  [27] HANGUL SYLLABLE GUG..HANGUL SYLLABLE GUH
                                                if (0xad6d <= code && code <= 0xad87) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE GWEO
                                                if (0xad88 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xada4) {
                                                // Lo  [27] HANGUL SYLLABLE GWEOG..HANGUL SYLLABLE GWEOH
                                                if (0xad89 <= code && code <= 0xada3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xada5) {
                                                    // Lo       HANGUL SYLLABLE GWE
                                                    if (0xada4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE GWEG..HANGUL SYLLABLE GWEH
                                                    if (0xada5 <= code && code <= 0xadbf) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xaddc) {
                                            if (code < 0xadc1) {
                                                // Lo       HANGUL SYLLABLE GWI
                                                if (0xadc0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE GWIG..HANGUL SYLLABLE GWIH
                                                if (0xadc1 <= code && code <= 0xaddb) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xaddd) {
                                                // Lo       HANGUL SYLLABLE GYU
                                                if (0xaddc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xadf8) {
                                                    // Lo  [27] HANGUL SYLLABLE GYUG..HANGUL SYLLABLE GYUH
                                                    if (0xaddd <= code && code <= 0xadf7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE GEU
                                                    if (0xadf8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xae4c) {
                                        if (code < 0xae15) {
                                            if (code < 0xae14) {
                                                // Lo  [27] HANGUL SYLLABLE GEUG..HANGUL SYLLABLE GEUH
                                                if (0xadf9 <= code && code <= 0xae13) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE GYI
                                                if (0xae14 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xae30) {
                                                // Lo  [27] HANGUL SYLLABLE GYIG..HANGUL SYLLABLE GYIH
                                                if (0xae15 <= code && code <= 0xae2f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xae31) {
                                                    // Lo       HANGUL SYLLABLE GI
                                                    if (0xae30 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE GIG..HANGUL SYLLABLE GIH
                                                    if (0xae31 <= code && code <= 0xae4b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xae69) {
                                            if (code < 0xae4d) {
                                                // Lo       HANGUL SYLLABLE GGA
                                                if (0xae4c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xae68) {
                                                    // Lo  [27] HANGUL SYLLABLE GGAG..HANGUL SYLLABLE GGAH
                                                    if (0xae4d <= code && code <= 0xae67) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE GGAE
                                                    if (0xae68 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xae84) {
                                                // Lo  [27] HANGUL SYLLABLE GGAEG..HANGUL SYLLABLE GGAEH
                                                if (0xae69 <= code && code <= 0xae83) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xae85) {
                                                    // Lo       HANGUL SYLLABLE GGYA
                                                    if (0xae84 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE GGYAG..HANGUL SYLLABLE GGYAH
                                                    if (0xae85 <= code && code <= 0xae9f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0xafb9) {
                                if (code < 0xaf2c) {
                                    if (code < 0xaed9) {
                                        if (code < 0xaebc) {
                                            if (code < 0xaea1) {
                                                // Lo       HANGUL SYLLABLE GGYAE
                                                if (0xaea0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE GGYAEG..HANGUL SYLLABLE GGYAEH
                                                if (0xaea1 <= code && code <= 0xaebb) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xaebd) {
                                                // Lo       HANGUL SYLLABLE GGEO
                                                if (0xaebc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xaed8) {
                                                    // Lo  [27] HANGUL SYLLABLE GGEOG..HANGUL SYLLABLE GGEOH
                                                    if (0xaebd <= code && code <= 0xaed7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE GGE
                                                    if (0xaed8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xaef5) {
                                            if (code < 0xaef4) {
                                                // Lo  [27] HANGUL SYLLABLE GGEG..HANGUL SYLLABLE GGEH
                                                if (0xaed9 <= code && code <= 0xaef3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE GGYEO
                                                if (0xaef4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xaf10) {
                                                // Lo  [27] HANGUL SYLLABLE GGYEOG..HANGUL SYLLABLE GGYEOH
                                                if (0xaef5 <= code && code <= 0xaf0f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xaf11) {
                                                    // Lo       HANGUL SYLLABLE GGYE
                                                    if (0xaf10 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE GGYEG..HANGUL SYLLABLE GGYEH
                                                    if (0xaf11 <= code && code <= 0xaf2b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xaf65) {
                                        if (code < 0xaf48) {
                                            if (code < 0xaf2d) {
                                                // Lo       HANGUL SYLLABLE GGO
                                                if (0xaf2c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE GGOG..HANGUL SYLLABLE GGOH
                                                if (0xaf2d <= code && code <= 0xaf47) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xaf49) {
                                                // Lo       HANGUL SYLLABLE GGWA
                                                if (0xaf48 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xaf64) {
                                                    // Lo  [27] HANGUL SYLLABLE GGWAG..HANGUL SYLLABLE GGWAH
                                                    if (0xaf49 <= code && code <= 0xaf63) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE GGWAE
                                                    if (0xaf64 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xaf9c) {
                                            if (code < 0xaf80) {
                                                // Lo  [27] HANGUL SYLLABLE GGWAEG..HANGUL SYLLABLE GGWAEH
                                                if (0xaf65 <= code && code <= 0xaf7f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xaf81) {
                                                    // Lo       HANGUL SYLLABLE GGOE
                                                    if (0xaf80 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE GGOEG..HANGUL SYLLABLE GGOEH
                                                    if (0xaf81 <= code && code <= 0xaf9b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xaf9d) {
                                                // Lo       HANGUL SYLLABLE GGYO
                                                if (0xaf9c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xafb8) {
                                                    // Lo  [27] HANGUL SYLLABLE GGYOG..HANGUL SYLLABLE GGYOH
                                                    if (0xaf9d <= code && code <= 0xafb7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE GGU
                                                    if (0xafb8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xb060) {
                                    if (code < 0xb00c) {
                                        if (code < 0xafd5) {
                                            if (code < 0xafd4) {
                                                // Lo  [27] HANGUL SYLLABLE GGUG..HANGUL SYLLABLE GGUH
                                                if (0xafb9 <= code && code <= 0xafd3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE GGWEO
                                                if (0xafd4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xaff0) {
                                                // Lo  [27] HANGUL SYLLABLE GGWEOG..HANGUL SYLLABLE GGWEOH
                                                if (0xafd5 <= code && code <= 0xafef) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xaff1) {
                                                    // Lo       HANGUL SYLLABLE GGWE
                                                    if (0xaff0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE GGWEG..HANGUL SYLLABLE GGWEH
                                                    if (0xaff1 <= code && code <= 0xb00b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb029) {
                                            if (code < 0xb00d) {
                                                // Lo       HANGUL SYLLABLE GGWI
                                                if (0xb00c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb028) {
                                                    // Lo  [27] HANGUL SYLLABLE GGWIG..HANGUL SYLLABLE GGWIH
                                                    if (0xb00d <= code && code <= 0xb027) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE GGYU
                                                    if (0xb028 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb044) {
                                                // Lo  [27] HANGUL SYLLABLE GGYUG..HANGUL SYLLABLE GGYUH
                                                if (0xb029 <= code && code <= 0xb043) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb045) {
                                                    // Lo       HANGUL SYLLABLE GGEU
                                                    if (0xb044 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE GGEUG..HANGUL SYLLABLE GGEUH
                                                    if (0xb045 <= code && code <= 0xb05f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xb099) {
                                        if (code < 0xb07c) {
                                            if (code < 0xb061) {
                                                // Lo       HANGUL SYLLABLE GGYI
                                                if (0xb060 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE GGYIG..HANGUL SYLLABLE GGYIH
                                                if (0xb061 <= code && code <= 0xb07b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb07d) {
                                                // Lo       HANGUL SYLLABLE GGI
                                                if (0xb07c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb098) {
                                                    // Lo  [27] HANGUL SYLLABLE GGIG..HANGUL SYLLABLE GGIH
                                                    if (0xb07d <= code && code <= 0xb097) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE NA
                                                    if (0xb098 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb0d0) {
                                            if (code < 0xb0b4) {
                                                // Lo  [27] HANGUL SYLLABLE NAG..HANGUL SYLLABLE NAH
                                                if (0xb099 <= code && code <= 0xb0b3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb0b5) {
                                                    // Lo       HANGUL SYLLABLE NAE
                                                    if (0xb0b4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE NAEG..HANGUL SYLLABLE NAEH
                                                    if (0xb0b5 <= code && code <= 0xb0cf) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb0d1) {
                                                // Lo       HANGUL SYLLABLE NYA
                                                if (0xb0d0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb0ec) {
                                                    // Lo  [27] HANGUL SYLLABLE NYAG..HANGUL SYLLABLE NYAH
                                                    if (0xb0d1 <= code && code <= 0xb0eb) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE NYAE
                                                    if (0xb0ec === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0xb354) {
                            if (code < 0xb220) {
                                if (code < 0xb179) {
                                    if (code < 0xb140) {
                                        if (code < 0xb109) {
                                            if (code < 0xb108) {
                                                // Lo  [27] HANGUL SYLLABLE NYAEG..HANGUL SYLLABLE NYAEH
                                                if (0xb0ed <= code && code <= 0xb107) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE NEO
                                                if (0xb108 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb124) {
                                                // Lo  [27] HANGUL SYLLABLE NEOG..HANGUL SYLLABLE NEOH
                                                if (0xb109 <= code && code <= 0xb123) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb125) {
                                                    // Lo       HANGUL SYLLABLE NE
                                                    if (0xb124 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE NEG..HANGUL SYLLABLE NEH
                                                    if (0xb125 <= code && code <= 0xb13f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb15c) {
                                            if (code < 0xb141) {
                                                // Lo       HANGUL SYLLABLE NYEO
                                                if (0xb140 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE NYEOG..HANGUL SYLLABLE NYEOH
                                                if (0xb141 <= code && code <= 0xb15b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb15d) {
                                                // Lo       HANGUL SYLLABLE NYE
                                                if (0xb15c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb178) {
                                                    // Lo  [27] HANGUL SYLLABLE NYEG..HANGUL SYLLABLE NYEH
                                                    if (0xb15d <= code && code <= 0xb177) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE NO
                                                    if (0xb178 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xb1cc) {
                                        if (code < 0xb195) {
                                            if (code < 0xb194) {
                                                // Lo  [27] HANGUL SYLLABLE NOG..HANGUL SYLLABLE NOH
                                                if (0xb179 <= code && code <= 0xb193) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE NWA
                                                if (0xb194 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb1b0) {
                                                // Lo  [27] HANGUL SYLLABLE NWAG..HANGUL SYLLABLE NWAH
                                                if (0xb195 <= code && code <= 0xb1af) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb1b1) {
                                                    // Lo       HANGUL SYLLABLE NWAE
                                                    if (0xb1b0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE NWAEG..HANGUL SYLLABLE NWAEH
                                                    if (0xb1b1 <= code && code <= 0xb1cb) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb1e9) {
                                            if (code < 0xb1cd) {
                                                // Lo       HANGUL SYLLABLE NOE
                                                if (0xb1cc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb1e8) {
                                                    // Lo  [27] HANGUL SYLLABLE NOEG..HANGUL SYLLABLE NOEH
                                                    if (0xb1cd <= code && code <= 0xb1e7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE NYO
                                                    if (0xb1e8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb204) {
                                                // Lo  [27] HANGUL SYLLABLE NYOG..HANGUL SYLLABLE NYOH
                                                if (0xb1e9 <= code && code <= 0xb203) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb205) {
                                                    // Lo       HANGUL SYLLABLE NU
                                                    if (0xb204 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE NUG..HANGUL SYLLABLE NUH
                                                    if (0xb205 <= code && code <= 0xb21f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xb2ad) {
                                    if (code < 0xb259) {
                                        if (code < 0xb23c) {
                                            if (code < 0xb221) {
                                                // Lo       HANGUL SYLLABLE NWEO
                                                if (0xb220 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE NWEOG..HANGUL SYLLABLE NWEOH
                                                if (0xb221 <= code && code <= 0xb23b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb23d) {
                                                // Lo       HANGUL SYLLABLE NWE
                                                if (0xb23c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb258) {
                                                    // Lo  [27] HANGUL SYLLABLE NWEG..HANGUL SYLLABLE NWEH
                                                    if (0xb23d <= code && code <= 0xb257) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE NWI
                                                    if (0xb258 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb290) {
                                            if (code < 0xb274) {
                                                // Lo  [27] HANGUL SYLLABLE NWIG..HANGUL SYLLABLE NWIH
                                                if (0xb259 <= code && code <= 0xb273) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb275) {
                                                    // Lo       HANGUL SYLLABLE NYU
                                                    if (0xb274 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE NYUG..HANGUL SYLLABLE NYUH
                                                    if (0xb275 <= code && code <= 0xb28f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb291) {
                                                // Lo       HANGUL SYLLABLE NEU
                                                if (0xb290 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb2ac) {
                                                    // Lo  [27] HANGUL SYLLABLE NEUG..HANGUL SYLLABLE NEUH
                                                    if (0xb291 <= code && code <= 0xb2ab) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE NYI
                                                    if (0xb2ac === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xb300) {
                                        if (code < 0xb2c9) {
                                            if (code < 0xb2c8) {
                                                // Lo  [27] HANGUL SYLLABLE NYIG..HANGUL SYLLABLE NYIH
                                                if (0xb2ad <= code && code <= 0xb2c7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE NI
                                                if (0xb2c8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb2e4) {
                                                // Lo  [27] HANGUL SYLLABLE NIG..HANGUL SYLLABLE NIH
                                                if (0xb2c9 <= code && code <= 0xb2e3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb2e5) {
                                                    // Lo       HANGUL SYLLABLE DA
                                                    if (0xb2e4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE DAG..HANGUL SYLLABLE DAH
                                                    if (0xb2e5 <= code && code <= 0xb2ff) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb31d) {
                                            if (code < 0xb301) {
                                                // Lo       HANGUL SYLLABLE DAE
                                                if (0xb300 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb31c) {
                                                    // Lo  [27] HANGUL SYLLABLE DAEG..HANGUL SYLLABLE DAEH
                                                    if (0xb301 <= code && code <= 0xb31b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE DYA
                                                    if (0xb31c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb338) {
                                                // Lo  [27] HANGUL SYLLABLE DYAG..HANGUL SYLLABLE DYAH
                                                if (0xb31d <= code && code <= 0xb337) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb339) {
                                                    // Lo       HANGUL SYLLABLE DYAE
                                                    if (0xb338 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE DYAEG..HANGUL SYLLABLE DYAEH
                                                    if (0xb339 <= code && code <= 0xb353) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0xb46d) {
                                if (code < 0xb3e0) {
                                    if (code < 0xb38d) {
                                        if (code < 0xb370) {
                                            if (code < 0xb355) {
                                                // Lo       HANGUL SYLLABLE DEO
                                                if (0xb354 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE DEOG..HANGUL SYLLABLE DEOH
                                                if (0xb355 <= code && code <= 0xb36f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb371) {
                                                // Lo       HANGUL SYLLABLE DE
                                                if (0xb370 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb38c) {
                                                    // Lo  [27] HANGUL SYLLABLE DEG..HANGUL SYLLABLE DEH
                                                    if (0xb371 <= code && code <= 0xb38b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE DYEO
                                                    if (0xb38c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb3a9) {
                                            if (code < 0xb3a8) {
                                                // Lo  [27] HANGUL SYLLABLE DYEOG..HANGUL SYLLABLE DYEOH
                                                if (0xb38d <= code && code <= 0xb3a7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE DYE
                                                if (0xb3a8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb3c4) {
                                                // Lo  [27] HANGUL SYLLABLE DYEG..HANGUL SYLLABLE DYEH
                                                if (0xb3a9 <= code && code <= 0xb3c3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb3c5) {
                                                    // Lo       HANGUL SYLLABLE DO
                                                    if (0xb3c4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE DOG..HANGUL SYLLABLE DOH
                                                    if (0xb3c5 <= code && code <= 0xb3df) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xb419) {
                                        if (code < 0xb3fc) {
                                            if (code < 0xb3e1) {
                                                // Lo       HANGUL SYLLABLE DWA
                                                if (0xb3e0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE DWAG..HANGUL SYLLABLE DWAH
                                                if (0xb3e1 <= code && code <= 0xb3fb) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb3fd) {
                                                // Lo       HANGUL SYLLABLE DWAE
                                                if (0xb3fc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb418) {
                                                    // Lo  [27] HANGUL SYLLABLE DWAEG..HANGUL SYLLABLE DWAEH
                                                    if (0xb3fd <= code && code <= 0xb417) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE DOE
                                                    if (0xb418 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb450) {
                                            if (code < 0xb434) {
                                                // Lo  [27] HANGUL SYLLABLE DOEG..HANGUL SYLLABLE DOEH
                                                if (0xb419 <= code && code <= 0xb433) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb435) {
                                                    // Lo       HANGUL SYLLABLE DYO
                                                    if (0xb434 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE DYOG..HANGUL SYLLABLE DYOH
                                                    if (0xb435 <= code && code <= 0xb44f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb451) {
                                                // Lo       HANGUL SYLLABLE DU
                                                if (0xb450 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb46c) {
                                                    // Lo  [27] HANGUL SYLLABLE DUG..HANGUL SYLLABLE DUH
                                                    if (0xb451 <= code && code <= 0xb46b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE DWEO
                                                    if (0xb46c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xb514) {
                                    if (code < 0xb4c0) {
                                        if (code < 0xb489) {
                                            if (code < 0xb488) {
                                                // Lo  [27] HANGUL SYLLABLE DWEOG..HANGUL SYLLABLE DWEOH
                                                if (0xb46d <= code && code <= 0xb487) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE DWE
                                                if (0xb488 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb4a4) {
                                                // Lo  [27] HANGUL SYLLABLE DWEG..HANGUL SYLLABLE DWEH
                                                if (0xb489 <= code && code <= 0xb4a3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb4a5) {
                                                    // Lo       HANGUL SYLLABLE DWI
                                                    if (0xb4a4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE DWIG..HANGUL SYLLABLE DWIH
                                                    if (0xb4a5 <= code && code <= 0xb4bf) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb4dd) {
                                            if (code < 0xb4c1) {
                                                // Lo       HANGUL SYLLABLE DYU
                                                if (0xb4c0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb4dc) {
                                                    // Lo  [27] HANGUL SYLLABLE DYUG..HANGUL SYLLABLE DYUH
                                                    if (0xb4c1 <= code && code <= 0xb4db) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE DEU
                                                    if (0xb4dc === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb4f8) {
                                                // Lo  [27] HANGUL SYLLABLE DEUG..HANGUL SYLLABLE DEUH
                                                if (0xb4dd <= code && code <= 0xb4f7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb4f9) {
                                                    // Lo       HANGUL SYLLABLE DYI
                                                    if (0xb4f8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE DYIG..HANGUL SYLLABLE DYIH
                                                    if (0xb4f9 <= code && code <= 0xb513) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xb54d) {
                                        if (code < 0xb530) {
                                            if (code < 0xb515) {
                                                // Lo       HANGUL SYLLABLE DI
                                                if (0xb514 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE DIG..HANGUL SYLLABLE DIH
                                                if (0xb515 <= code && code <= 0xb52f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb531) {
                                                // Lo       HANGUL SYLLABLE DDA
                                                if (0xb530 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb54c) {
                                                    // Lo  [27] HANGUL SYLLABLE DDAG..HANGUL SYLLABLE DDAH
                                                    if (0xb531 <= code && code <= 0xb54b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE DDAE
                                                    if (0xb54c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb584) {
                                            if (code < 0xb568) {
                                                // Lo  [27] HANGUL SYLLABLE DDAEG..HANGUL SYLLABLE DDAEH
                                                if (0xb54d <= code && code <= 0xb567) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb569) {
                                                    // Lo       HANGUL SYLLABLE DDYA
                                                    if (0xb568 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE DDYAG..HANGUL SYLLABLE DDYAH
                                                    if (0xb569 <= code && code <= 0xb583) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb585) {
                                                // Lo       HANGUL SYLLABLE DDYAE
                                                if (0xb584 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb5a0) {
                                                    // Lo  [27] HANGUL SYLLABLE DDYAEG..HANGUL SYLLABLE DDYAEH
                                                    if (0xb585 <= code && code <= 0xb59f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE DDEO
                                                    if (0xb5a0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
                else {
                    if (code < 0xba55) {
                        if (code < 0xb808) {
                            if (code < 0xb6d4) {
                                if (code < 0xb62d) {
                                    if (code < 0xb5f4) {
                                        if (code < 0xb5bd) {
                                            if (code < 0xb5bc) {
                                                // Lo  [27] HANGUL SYLLABLE DDEOG..HANGUL SYLLABLE DDEOH
                                                if (0xb5a1 <= code && code <= 0xb5bb) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE DDE
                                                if (0xb5bc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb5d8) {
                                                // Lo  [27] HANGUL SYLLABLE DDEG..HANGUL SYLLABLE DDEH
                                                if (0xb5bd <= code && code <= 0xb5d7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb5d9) {
                                                    // Lo       HANGUL SYLLABLE DDYEO
                                                    if (0xb5d8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE DDYEOG..HANGUL SYLLABLE DDYEOH
                                                    if (0xb5d9 <= code && code <= 0xb5f3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb610) {
                                            if (code < 0xb5f5) {
                                                // Lo       HANGUL SYLLABLE DDYE
                                                if (0xb5f4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE DDYEG..HANGUL SYLLABLE DDYEH
                                                if (0xb5f5 <= code && code <= 0xb60f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb611) {
                                                // Lo       HANGUL SYLLABLE DDO
                                                if (0xb610 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb62c) {
                                                    // Lo  [27] HANGUL SYLLABLE DDOG..HANGUL SYLLABLE DDOH
                                                    if (0xb611 <= code && code <= 0xb62b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE DDWA
                                                    if (0xb62c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xb680) {
                                        if (code < 0xb649) {
                                            if (code < 0xb648) {
                                                // Lo  [27] HANGUL SYLLABLE DDWAG..HANGUL SYLLABLE DDWAH
                                                if (0xb62d <= code && code <= 0xb647) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE DDWAE
                                                if (0xb648 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb664) {
                                                // Lo  [27] HANGUL SYLLABLE DDWAEG..HANGUL SYLLABLE DDWAEH
                                                if (0xb649 <= code && code <= 0xb663) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb665) {
                                                    // Lo       HANGUL SYLLABLE DDOE
                                                    if (0xb664 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE DDOEG..HANGUL SYLLABLE DDOEH
                                                    if (0xb665 <= code && code <= 0xb67f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb69d) {
                                            if (code < 0xb681) {
                                                // Lo       HANGUL SYLLABLE DDYO
                                                if (0xb680 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb69c) {
                                                    // Lo  [27] HANGUL SYLLABLE DDYOG..HANGUL SYLLABLE DDYOH
                                                    if (0xb681 <= code && code <= 0xb69b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE DDU
                                                    if (0xb69c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb6b8) {
                                                // Lo  [27] HANGUL SYLLABLE DDUG..HANGUL SYLLABLE DDUH
                                                if (0xb69d <= code && code <= 0xb6b7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb6b9) {
                                                    // Lo       HANGUL SYLLABLE DDWEO
                                                    if (0xb6b8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE DDWEOG..HANGUL SYLLABLE DDWEOH
                                                    if (0xb6b9 <= code && code <= 0xb6d3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xb761) {
                                    if (code < 0xb70d) {
                                        if (code < 0xb6f0) {
                                            if (code < 0xb6d5) {
                                                // Lo       HANGUL SYLLABLE DDWE
                                                if (0xb6d4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE DDWEG..HANGUL SYLLABLE DDWEH
                                                if (0xb6d5 <= code && code <= 0xb6ef) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb6f1) {
                                                // Lo       HANGUL SYLLABLE DDWI
                                                if (0xb6f0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb70c) {
                                                    // Lo  [27] HANGUL SYLLABLE DDWIG..HANGUL SYLLABLE DDWIH
                                                    if (0xb6f1 <= code && code <= 0xb70b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE DDYU
                                                    if (0xb70c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb744) {
                                            if (code < 0xb728) {
                                                // Lo  [27] HANGUL SYLLABLE DDYUG..HANGUL SYLLABLE DDYUH
                                                if (0xb70d <= code && code <= 0xb727) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb729) {
                                                    // Lo       HANGUL SYLLABLE DDEU
                                                    if (0xb728 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE DDEUG..HANGUL SYLLABLE DDEUH
                                                    if (0xb729 <= code && code <= 0xb743) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb745) {
                                                // Lo       HANGUL SYLLABLE DDYI
                                                if (0xb744 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb760) {
                                                    // Lo  [27] HANGUL SYLLABLE DDYIG..HANGUL SYLLABLE DDYIH
                                                    if (0xb745 <= code && code <= 0xb75f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE DDI
                                                    if (0xb760 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xb7b4) {
                                        if (code < 0xb77d) {
                                            if (code < 0xb77c) {
                                                // Lo  [27] HANGUL SYLLABLE DDIG..HANGUL SYLLABLE DDIH
                                                if (0xb761 <= code && code <= 0xb77b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE RA
                                                if (0xb77c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb798) {
                                                // Lo  [27] HANGUL SYLLABLE RAG..HANGUL SYLLABLE RAH
                                                if (0xb77d <= code && code <= 0xb797) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb799) {
                                                    // Lo       HANGUL SYLLABLE RAE
                                                    if (0xb798 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE RAEG..HANGUL SYLLABLE RAEH
                                                    if (0xb799 <= code && code <= 0xb7b3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb7d1) {
                                            if (code < 0xb7b5) {
                                                // Lo       HANGUL SYLLABLE RYA
                                                if (0xb7b4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb7d0) {
                                                    // Lo  [27] HANGUL SYLLABLE RYAG..HANGUL SYLLABLE RYAH
                                                    if (0xb7b5 <= code && code <= 0xb7cf) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE RYAE
                                                    if (0xb7d0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb7ec) {
                                                // Lo  [27] HANGUL SYLLABLE RYAEG..HANGUL SYLLABLE RYAEH
                                                if (0xb7d1 <= code && code <= 0xb7eb) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb7ed) {
                                                    // Lo       HANGUL SYLLABLE REO
                                                    if (0xb7ec === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE REOG..HANGUL SYLLABLE REOH
                                                    if (0xb7ed <= code && code <= 0xb807) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0xb921) {
                                if (code < 0xb894) {
                                    if (code < 0xb841) {
                                        if (code < 0xb824) {
                                            if (code < 0xb809) {
                                                // Lo       HANGUL SYLLABLE RE
                                                if (0xb808 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE REG..HANGUL SYLLABLE REH
                                                if (0xb809 <= code && code <= 0xb823) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb825) {
                                                // Lo       HANGUL SYLLABLE RYEO
                                                if (0xb824 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb840) {
                                                    // Lo  [27] HANGUL SYLLABLE RYEOG..HANGUL SYLLABLE RYEOH
                                                    if (0xb825 <= code && code <= 0xb83f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE RYE
                                                    if (0xb840 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb85d) {
                                            if (code < 0xb85c) {
                                                // Lo  [27] HANGUL SYLLABLE RYEG..HANGUL SYLLABLE RYEH
                                                if (0xb841 <= code && code <= 0xb85b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE RO
                                                if (0xb85c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb878) {
                                                // Lo  [27] HANGUL SYLLABLE ROG..HANGUL SYLLABLE ROH
                                                if (0xb85d <= code && code <= 0xb877) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb879) {
                                                    // Lo       HANGUL SYLLABLE RWA
                                                    if (0xb878 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE RWAG..HANGUL SYLLABLE RWAH
                                                    if (0xb879 <= code && code <= 0xb893) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xb8cd) {
                                        if (code < 0xb8b0) {
                                            if (code < 0xb895) {
                                                // Lo       HANGUL SYLLABLE RWAE
                                                if (0xb894 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE RWAEG..HANGUL SYLLABLE RWAEH
                                                if (0xb895 <= code && code <= 0xb8af) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb8b1) {
                                                // Lo       HANGUL SYLLABLE ROE
                                                if (0xb8b0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb8cc) {
                                                    // Lo  [27] HANGUL SYLLABLE ROEG..HANGUL SYLLABLE ROEH
                                                    if (0xb8b1 <= code && code <= 0xb8cb) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE RYO
                                                    if (0xb8cc === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb904) {
                                            if (code < 0xb8e8) {
                                                // Lo  [27] HANGUL SYLLABLE RYOG..HANGUL SYLLABLE RYOH
                                                if (0xb8cd <= code && code <= 0xb8e7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb8e9) {
                                                    // Lo       HANGUL SYLLABLE RU
                                                    if (0xb8e8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE RUG..HANGUL SYLLABLE RUH
                                                    if (0xb8e9 <= code && code <= 0xb903) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb905) {
                                                // Lo       HANGUL SYLLABLE RWEO
                                                if (0xb904 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb920) {
                                                    // Lo  [27] HANGUL SYLLABLE RWEOG..HANGUL SYLLABLE RWEOH
                                                    if (0xb905 <= code && code <= 0xb91f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE RWE
                                                    if (0xb920 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xb9c8) {
                                    if (code < 0xb974) {
                                        if (code < 0xb93d) {
                                            if (code < 0xb93c) {
                                                // Lo  [27] HANGUL SYLLABLE RWEG..HANGUL SYLLABLE RWEH
                                                if (0xb921 <= code && code <= 0xb93b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE RWI
                                                if (0xb93c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb958) {
                                                // Lo  [27] HANGUL SYLLABLE RWIG..HANGUL SYLLABLE RWIH
                                                if (0xb93d <= code && code <= 0xb957) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb959) {
                                                    // Lo       HANGUL SYLLABLE RYU
                                                    if (0xb958 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE RYUG..HANGUL SYLLABLE RYUH
                                                    if (0xb959 <= code && code <= 0xb973) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xb991) {
                                            if (code < 0xb975) {
                                                // Lo       HANGUL SYLLABLE REU
                                                if (0xb974 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xb990) {
                                                    // Lo  [27] HANGUL SYLLABLE REUG..HANGUL SYLLABLE REUH
                                                    if (0xb975 <= code && code <= 0xb98f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE RYI
                                                    if (0xb990 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb9ac) {
                                                // Lo  [27] HANGUL SYLLABLE RYIG..HANGUL SYLLABLE RYIH
                                                if (0xb991 <= code && code <= 0xb9ab) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xb9ad) {
                                                    // Lo       HANGUL SYLLABLE RI
                                                    if (0xb9ac === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE RIG..HANGUL SYLLABLE RIH
                                                    if (0xb9ad <= code && code <= 0xb9c7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xba01) {
                                        if (code < 0xb9e4) {
                                            if (code < 0xb9c9) {
                                                // Lo       HANGUL SYLLABLE MA
                                                if (0xb9c8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE MAG..HANGUL SYLLABLE MAH
                                                if (0xb9c9 <= code && code <= 0xb9e3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xb9e5) {
                                                // Lo       HANGUL SYLLABLE MAE
                                                if (0xb9e4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xba00) {
                                                    // Lo  [27] HANGUL SYLLABLE MAEG..HANGUL SYLLABLE MAEH
                                                    if (0xb9e5 <= code && code <= 0xb9ff) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE MYA
                                                    if (0xba00 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xba38) {
                                            if (code < 0xba1c) {
                                                // Lo  [27] HANGUL SYLLABLE MYAG..HANGUL SYLLABLE MYAH
                                                if (0xba01 <= code && code <= 0xba1b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xba1d) {
                                                    // Lo       HANGUL SYLLABLE MYAE
                                                    if (0xba1c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE MYAEG..HANGUL SYLLABLE MYAEH
                                                    if (0xba1d <= code && code <= 0xba37) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xba39) {
                                                // Lo       HANGUL SYLLABLE MEO
                                                if (0xba38 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xba54) {
                                                    // Lo  [27] HANGUL SYLLABLE MEOG..HANGUL SYLLABLE MEOH
                                                    if (0xba39 <= code && code <= 0xba53) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE ME
                                                    if (0xba54 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0xbcbc) {
                            if (code < 0xbb88) {
                                if (code < 0xbae1) {
                                    if (code < 0xbaa8) {
                                        if (code < 0xba71) {
                                            if (code < 0xba70) {
                                                // Lo  [27] HANGUL SYLLABLE MEG..HANGUL SYLLABLE MEH
                                                if (0xba55 <= code && code <= 0xba6f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE MYEO
                                                if (0xba70 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xba8c) {
                                                // Lo  [27] HANGUL SYLLABLE MYEOG..HANGUL SYLLABLE MYEOH
                                                if (0xba71 <= code && code <= 0xba8b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xba8d) {
                                                    // Lo       HANGUL SYLLABLE MYE
                                                    if (0xba8c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE MYEG..HANGUL SYLLABLE MYEH
                                                    if (0xba8d <= code && code <= 0xbaa7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xbac4) {
                                            if (code < 0xbaa9) {
                                                // Lo       HANGUL SYLLABLE MO
                                                if (0xbaa8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE MOG..HANGUL SYLLABLE MOH
                                                if (0xbaa9 <= code && code <= 0xbac3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbac5) {
                                                // Lo       HANGUL SYLLABLE MWA
                                                if (0xbac4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xbae0) {
                                                    // Lo  [27] HANGUL SYLLABLE MWAG..HANGUL SYLLABLE MWAH
                                                    if (0xbac5 <= code && code <= 0xbadf) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE MWAE
                                                    if (0xbae0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xbb34) {
                                        if (code < 0xbafd) {
                                            if (code < 0xbafc) {
                                                // Lo  [27] HANGUL SYLLABLE MWAEG..HANGUL SYLLABLE MWAEH
                                                if (0xbae1 <= code && code <= 0xbafb) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE MOE
                                                if (0xbafc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbb18) {
                                                // Lo  [27] HANGUL SYLLABLE MOEG..HANGUL SYLLABLE MOEH
                                                if (0xbafd <= code && code <= 0xbb17) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xbb19) {
                                                    // Lo       HANGUL SYLLABLE MYO
                                                    if (0xbb18 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE MYOG..HANGUL SYLLABLE MYOH
                                                    if (0xbb19 <= code && code <= 0xbb33) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xbb51) {
                                            if (code < 0xbb35) {
                                                // Lo       HANGUL SYLLABLE MU
                                                if (0xbb34 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xbb50) {
                                                    // Lo  [27] HANGUL SYLLABLE MUG..HANGUL SYLLABLE MUH
                                                    if (0xbb35 <= code && code <= 0xbb4f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE MWEO
                                                    if (0xbb50 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbb6c) {
                                                // Lo  [27] HANGUL SYLLABLE MWEOG..HANGUL SYLLABLE MWEOH
                                                if (0xbb51 <= code && code <= 0xbb6b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xbb6d) {
                                                    // Lo       HANGUL SYLLABLE MWE
                                                    if (0xbb6c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE MWEG..HANGUL SYLLABLE MWEH
                                                    if (0xbb6d <= code && code <= 0xbb87) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xbc15) {
                                    if (code < 0xbbc1) {
                                        if (code < 0xbba4) {
                                            if (code < 0xbb89) {
                                                // Lo       HANGUL SYLLABLE MWI
                                                if (0xbb88 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE MWIG..HANGUL SYLLABLE MWIH
                                                if (0xbb89 <= code && code <= 0xbba3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbba5) {
                                                // Lo       HANGUL SYLLABLE MYU
                                                if (0xbba4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xbbc0) {
                                                    // Lo  [27] HANGUL SYLLABLE MYUG..HANGUL SYLLABLE MYUH
                                                    if (0xbba5 <= code && code <= 0xbbbf) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE MEU
                                                    if (0xbbc0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xbbf8) {
                                            if (code < 0xbbdc) {
                                                // Lo  [27] HANGUL SYLLABLE MEUG..HANGUL SYLLABLE MEUH
                                                if (0xbbc1 <= code && code <= 0xbbdb) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xbbdd) {
                                                    // Lo       HANGUL SYLLABLE MYI
                                                    if (0xbbdc === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE MYIG..HANGUL SYLLABLE MYIH
                                                    if (0xbbdd <= code && code <= 0xbbf7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbbf9) {
                                                // Lo       HANGUL SYLLABLE MI
                                                if (0xbbf8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xbc14) {
                                                    // Lo  [27] HANGUL SYLLABLE MIG..HANGUL SYLLABLE MIH
                                                    if (0xbbf9 <= code && code <= 0xbc13) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE BA
                                                    if (0xbc14 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xbc68) {
                                        if (code < 0xbc31) {
                                            if (code < 0xbc30) {
                                                // Lo  [27] HANGUL SYLLABLE BAG..HANGUL SYLLABLE BAH
                                                if (0xbc15 <= code && code <= 0xbc2f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE BAE
                                                if (0xbc30 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbc4c) {
                                                // Lo  [27] HANGUL SYLLABLE BAEG..HANGUL SYLLABLE BAEH
                                                if (0xbc31 <= code && code <= 0xbc4b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xbc4d) {
                                                    // Lo       HANGUL SYLLABLE BYA
                                                    if (0xbc4c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE BYAG..HANGUL SYLLABLE BYAH
                                                    if (0xbc4d <= code && code <= 0xbc67) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xbc85) {
                                            if (code < 0xbc69) {
                                                // Lo       HANGUL SYLLABLE BYAE
                                                if (0xbc68 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xbc84) {
                                                    // Lo  [27] HANGUL SYLLABLE BYAEG..HANGUL SYLLABLE BYAEH
                                                    if (0xbc69 <= code && code <= 0xbc83) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE BEO
                                                    if (0xbc84 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbca0) {
                                                // Lo  [27] HANGUL SYLLABLE BEOG..HANGUL SYLLABLE BEOH
                                                if (0xbc85 <= code && code <= 0xbc9f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xbca1) {
                                                    // Lo       HANGUL SYLLABLE BE
                                                    if (0xbca0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE BEG..HANGUL SYLLABLE BEH
                                                    if (0xbca1 <= code && code <= 0xbcbb) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0xbdd5) {
                                if (code < 0xbd48) {
                                    if (code < 0xbcf5) {
                                        if (code < 0xbcd8) {
                                            if (code < 0xbcbd) {
                                                // Lo       HANGUL SYLLABLE BYEO
                                                if (0xbcbc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE BYEOG..HANGUL SYLLABLE BYEOH
                                                if (0xbcbd <= code && code <= 0xbcd7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbcd9) {
                                                // Lo       HANGUL SYLLABLE BYE
                                                if (0xbcd8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xbcf4) {
                                                    // Lo  [27] HANGUL SYLLABLE BYEG..HANGUL SYLLABLE BYEH
                                                    if (0xbcd9 <= code && code <= 0xbcf3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE BO
                                                    if (0xbcf4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xbd11) {
                                            if (code < 0xbd10) {
                                                // Lo  [27] HANGUL SYLLABLE BOG..HANGUL SYLLABLE BOH
                                                if (0xbcf5 <= code && code <= 0xbd0f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE BWA
                                                if (0xbd10 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbd2c) {
                                                // Lo  [27] HANGUL SYLLABLE BWAG..HANGUL SYLLABLE BWAH
                                                if (0xbd11 <= code && code <= 0xbd2b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xbd2d) {
                                                    // Lo       HANGUL SYLLABLE BWAE
                                                    if (0xbd2c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE BWAEG..HANGUL SYLLABLE BWAEH
                                                    if (0xbd2d <= code && code <= 0xbd47) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xbd81) {
                                        if (code < 0xbd64) {
                                            if (code < 0xbd49) {
                                                // Lo       HANGUL SYLLABLE BOE
                                                if (0xbd48 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE BOEG..HANGUL SYLLABLE BOEH
                                                if (0xbd49 <= code && code <= 0xbd63) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbd65) {
                                                // Lo       HANGUL SYLLABLE BYO
                                                if (0xbd64 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xbd80) {
                                                    // Lo  [27] HANGUL SYLLABLE BYOG..HANGUL SYLLABLE BYOH
                                                    if (0xbd65 <= code && code <= 0xbd7f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE BU
                                                    if (0xbd80 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xbdb8) {
                                            if (code < 0xbd9c) {
                                                // Lo  [27] HANGUL SYLLABLE BUG..HANGUL SYLLABLE BUH
                                                if (0xbd81 <= code && code <= 0xbd9b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xbd9d) {
                                                    // Lo       HANGUL SYLLABLE BWEO
                                                    if (0xbd9c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE BWEOG..HANGUL SYLLABLE BWEOH
                                                    if (0xbd9d <= code && code <= 0xbdb7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbdb9) {
                                                // Lo       HANGUL SYLLABLE BWE
                                                if (0xbdb8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xbdd4) {
                                                    // Lo  [27] HANGUL SYLLABLE BWEG..HANGUL SYLLABLE BWEH
                                                    if (0xbdb9 <= code && code <= 0xbdd3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE BWI
                                                    if (0xbdd4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xbe7c) {
                                    if (code < 0xbe28) {
                                        if (code < 0xbdf1) {
                                            if (code < 0xbdf0) {
                                                // Lo  [27] HANGUL SYLLABLE BWIG..HANGUL SYLLABLE BWIH
                                                if (0xbdd5 <= code && code <= 0xbdef) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE BYU
                                                if (0xbdf0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbe0c) {
                                                // Lo  [27] HANGUL SYLLABLE BYUG..HANGUL SYLLABLE BYUH
                                                if (0xbdf1 <= code && code <= 0xbe0b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xbe0d) {
                                                    // Lo       HANGUL SYLLABLE BEU
                                                    if (0xbe0c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE BEUG..HANGUL SYLLABLE BEUH
                                                    if (0xbe0d <= code && code <= 0xbe27) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xbe45) {
                                            if (code < 0xbe29) {
                                                // Lo       HANGUL SYLLABLE BYI
                                                if (0xbe28 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xbe44) {
                                                    // Lo  [27] HANGUL SYLLABLE BYIG..HANGUL SYLLABLE BYIH
                                                    if (0xbe29 <= code && code <= 0xbe43) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE BI
                                                    if (0xbe44 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbe60) {
                                                // Lo  [27] HANGUL SYLLABLE BIG..HANGUL SYLLABLE BIH
                                                if (0xbe45 <= code && code <= 0xbe5f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xbe61) {
                                                    // Lo       HANGUL SYLLABLE BBA
                                                    if (0xbe60 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE BBAG..HANGUL SYLLABLE BBAH
                                                    if (0xbe61 <= code && code <= 0xbe7b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xbeb5) {
                                        if (code < 0xbe98) {
                                            if (code < 0xbe7d) {
                                                // Lo       HANGUL SYLLABLE BBAE
                                                if (0xbe7c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE BBAEG..HANGUL SYLLABLE BBAEH
                                                if (0xbe7d <= code && code <= 0xbe97) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbe99) {
                                                // Lo       HANGUL SYLLABLE BBYA
                                                if (0xbe98 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xbeb4) {
                                                    // Lo  [27] HANGUL SYLLABLE BBYAG..HANGUL SYLLABLE BBYAH
                                                    if (0xbe99 <= code && code <= 0xbeb3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE BBYAE
                                                    if (0xbeb4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xbeec) {
                                            if (code < 0xbed0) {
                                                // Lo  [27] HANGUL SYLLABLE BBYAEG..HANGUL SYLLABLE BBYAEH
                                                if (0xbeb5 <= code && code <= 0xbecf) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xbed1) {
                                                    // Lo       HANGUL SYLLABLE BBEO
                                                    if (0xbed0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE BBEOG..HANGUL SYLLABLE BBEOH
                                                    if (0xbed1 <= code && code <= 0xbeeb) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbeed) {
                                                // Lo       HANGUL SYLLABLE BBE
                                                if (0xbeec === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xbf08) {
                                                    // Lo  [27] HANGUL SYLLABLE BBEG..HANGUL SYLLABLE BBEH
                                                    if (0xbeed <= code && code <= 0xbf07) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE BBYEO
                                                    if (0xbf08 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        else {
            if (code < 0xd1d8) {
                if (code < 0xc870) {
                    if (code < 0xc3bc) {
                        if (code < 0xc155) {
                            if (code < 0xc03c) {
                                if (code < 0xbf95) {
                                    if (code < 0xbf5c) {
                                        if (code < 0xbf25) {
                                            if (code < 0xbf24) {
                                                // Lo  [27] HANGUL SYLLABLE BBYEOG..HANGUL SYLLABLE BBYEOH
                                                if (0xbf09 <= code && code <= 0xbf23) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE BBYE
                                                if (0xbf24 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbf40) {
                                                // Lo  [27] HANGUL SYLLABLE BBYEG..HANGUL SYLLABLE BBYEH
                                                if (0xbf25 <= code && code <= 0xbf3f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xbf41) {
                                                    // Lo       HANGUL SYLLABLE BBO
                                                    if (0xbf40 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE BBOG..HANGUL SYLLABLE BBOH
                                                    if (0xbf41 <= code && code <= 0xbf5b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xbf78) {
                                            if (code < 0xbf5d) {
                                                // Lo       HANGUL SYLLABLE BBWA
                                                if (0xbf5c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE BBWAG..HANGUL SYLLABLE BBWAH
                                                if (0xbf5d <= code && code <= 0xbf77) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbf79) {
                                                // Lo       HANGUL SYLLABLE BBWAE
                                                if (0xbf78 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xbf94) {
                                                    // Lo  [27] HANGUL SYLLABLE BBWAEG..HANGUL SYLLABLE BBWAEH
                                                    if (0xbf79 <= code && code <= 0xbf93) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE BBOE
                                                    if (0xbf94 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xbfe8) {
                                        if (code < 0xbfb1) {
                                            if (code < 0xbfb0) {
                                                // Lo  [27] HANGUL SYLLABLE BBOEG..HANGUL SYLLABLE BBOEH
                                                if (0xbf95 <= code && code <= 0xbfaf) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE BBYO
                                                if (0xbfb0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xbfcc) {
                                                // Lo  [27] HANGUL SYLLABLE BBYOG..HANGUL SYLLABLE BBYOH
                                                if (0xbfb1 <= code && code <= 0xbfcb) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xbfcd) {
                                                    // Lo       HANGUL SYLLABLE BBU
                                                    if (0xbfcc === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE BBUG..HANGUL SYLLABLE BBUH
                                                    if (0xbfcd <= code && code <= 0xbfe7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc005) {
                                            if (code < 0xbfe9) {
                                                // Lo       HANGUL SYLLABLE BBWEO
                                                if (0xbfe8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc004) {
                                                    // Lo  [27] HANGUL SYLLABLE BBWEOG..HANGUL SYLLABLE BBWEOH
                                                    if (0xbfe9 <= code && code <= 0xc003) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE BBWE
                                                    if (0xc004 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc020) {
                                                // Lo  [27] HANGUL SYLLABLE BBWEG..HANGUL SYLLABLE BBWEH
                                                if (0xc005 <= code && code <= 0xc01f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc021) {
                                                    // Lo       HANGUL SYLLABLE BBWI
                                                    if (0xc020 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE BBWIG..HANGUL SYLLABLE BBWIH
                                                    if (0xc021 <= code && code <= 0xc03b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xc0c8) {
                                    if (code < 0xc075) {
                                        if (code < 0xc058) {
                                            if (code < 0xc03d) {
                                                // Lo       HANGUL SYLLABLE BBYU
                                                if (0xc03c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE BBYUG..HANGUL SYLLABLE BBYUH
                                                if (0xc03d <= code && code <= 0xc057) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc059) {
                                                // Lo       HANGUL SYLLABLE BBEU
                                                if (0xc058 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc074) {
                                                    // Lo  [27] HANGUL SYLLABLE BBEUG..HANGUL SYLLABLE BBEUH
                                                    if (0xc059 <= code && code <= 0xc073) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE BBYI
                                                    if (0xc074 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc091) {
                                            if (code < 0xc090) {
                                                // Lo  [27] HANGUL SYLLABLE BBYIG..HANGUL SYLLABLE BBYIH
                                                if (0xc075 <= code && code <= 0xc08f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE BBI
                                                if (0xc090 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc0ac) {
                                                // Lo  [27] HANGUL SYLLABLE BBIG..HANGUL SYLLABLE BBIH
                                                if (0xc091 <= code && code <= 0xc0ab) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc0ad) {
                                                    // Lo       HANGUL SYLLABLE SA
                                                    if (0xc0ac === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE SAG..HANGUL SYLLABLE SAH
                                                    if (0xc0ad <= code && code <= 0xc0c7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xc101) {
                                        if (code < 0xc0e4) {
                                            if (code < 0xc0c9) {
                                                // Lo       HANGUL SYLLABLE SAE
                                                if (0xc0c8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE SAEG..HANGUL SYLLABLE SAEH
                                                if (0xc0c9 <= code && code <= 0xc0e3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc0e5) {
                                                // Lo       HANGUL SYLLABLE SYA
                                                if (0xc0e4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc100) {
                                                    // Lo  [27] HANGUL SYLLABLE SYAG..HANGUL SYLLABLE SYAH
                                                    if (0xc0e5 <= code && code <= 0xc0ff) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE SYAE
                                                    if (0xc100 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc138) {
                                            if (code < 0xc11c) {
                                                // Lo  [27] HANGUL SYLLABLE SYAEG..HANGUL SYLLABLE SYAEH
                                                if (0xc101 <= code && code <= 0xc11b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc11d) {
                                                    // Lo       HANGUL SYLLABLE SEO
                                                    if (0xc11c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE SEOG..HANGUL SYLLABLE SEOH
                                                    if (0xc11d <= code && code <= 0xc137) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc139) {
                                                // Lo       HANGUL SYLLABLE SE
                                                if (0xc138 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc154) {
                                                    // Lo  [27] HANGUL SYLLABLE SEG..HANGUL SYLLABLE SEH
                                                    if (0xc139 <= code && code <= 0xc153) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE SYEO
                                                    if (0xc154 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0xc288) {
                                if (code < 0xc1e1) {
                                    if (code < 0xc1a8) {
                                        if (code < 0xc171) {
                                            if (code < 0xc170) {
                                                // Lo  [27] HANGUL SYLLABLE SYEOG..HANGUL SYLLABLE SYEOH
                                                if (0xc155 <= code && code <= 0xc16f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE SYE
                                                if (0xc170 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc18c) {
                                                // Lo  [27] HANGUL SYLLABLE SYEG..HANGUL SYLLABLE SYEH
                                                if (0xc171 <= code && code <= 0xc18b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc18d) {
                                                    // Lo       HANGUL SYLLABLE SO
                                                    if (0xc18c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE SOG..HANGUL SYLLABLE SOH
                                                    if (0xc18d <= code && code <= 0xc1a7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc1c4) {
                                            if (code < 0xc1a9) {
                                                // Lo       HANGUL SYLLABLE SWA
                                                if (0xc1a8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE SWAG..HANGUL SYLLABLE SWAH
                                                if (0xc1a9 <= code && code <= 0xc1c3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc1c5) {
                                                // Lo       HANGUL SYLLABLE SWAE
                                                if (0xc1c4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc1e0) {
                                                    // Lo  [27] HANGUL SYLLABLE SWAEG..HANGUL SYLLABLE SWAEH
                                                    if (0xc1c5 <= code && code <= 0xc1df) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE SOE
                                                    if (0xc1e0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xc234) {
                                        if (code < 0xc1fd) {
                                            if (code < 0xc1fc) {
                                                // Lo  [27] HANGUL SYLLABLE SOEG..HANGUL SYLLABLE SOEH
                                                if (0xc1e1 <= code && code <= 0xc1fb) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE SYO
                                                if (0xc1fc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc218) {
                                                // Lo  [27] HANGUL SYLLABLE SYOG..HANGUL SYLLABLE SYOH
                                                if (0xc1fd <= code && code <= 0xc217) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc219) {
                                                    // Lo       HANGUL SYLLABLE SU
                                                    if (0xc218 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE SUG..HANGUL SYLLABLE SUH
                                                    if (0xc219 <= code && code <= 0xc233) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc251) {
                                            if (code < 0xc235) {
                                                // Lo       HANGUL SYLLABLE SWEO
                                                if (0xc234 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc250) {
                                                    // Lo  [27] HANGUL SYLLABLE SWEOG..HANGUL SYLLABLE SWEOH
                                                    if (0xc235 <= code && code <= 0xc24f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE SWE
                                                    if (0xc250 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc26c) {
                                                // Lo  [27] HANGUL SYLLABLE SWEG..HANGUL SYLLABLE SWEH
                                                if (0xc251 <= code && code <= 0xc26b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc26d) {
                                                    // Lo       HANGUL SYLLABLE SWI
                                                    if (0xc26c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE SWIG..HANGUL SYLLABLE SWIH
                                                    if (0xc26d <= code && code <= 0xc287) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xc315) {
                                    if (code < 0xc2c1) {
                                        if (code < 0xc2a4) {
                                            if (code < 0xc289) {
                                                // Lo       HANGUL SYLLABLE SYU
                                                if (0xc288 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE SYUG..HANGUL SYLLABLE SYUH
                                                if (0xc289 <= code && code <= 0xc2a3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc2a5) {
                                                // Lo       HANGUL SYLLABLE SEU
                                                if (0xc2a4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc2c0) {
                                                    // Lo  [27] HANGUL SYLLABLE SEUG..HANGUL SYLLABLE SEUH
                                                    if (0xc2a5 <= code && code <= 0xc2bf) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE SYI
                                                    if (0xc2c0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc2f8) {
                                            if (code < 0xc2dc) {
                                                // Lo  [27] HANGUL SYLLABLE SYIG..HANGUL SYLLABLE SYIH
                                                if (0xc2c1 <= code && code <= 0xc2db) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc2dd) {
                                                    // Lo       HANGUL SYLLABLE SI
                                                    if (0xc2dc === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE SIG..HANGUL SYLLABLE SIH
                                                    if (0xc2dd <= code && code <= 0xc2f7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc2f9) {
                                                // Lo       HANGUL SYLLABLE SSA
                                                if (0xc2f8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc314) {
                                                    // Lo  [27] HANGUL SYLLABLE SSAG..HANGUL SYLLABLE SSAH
                                                    if (0xc2f9 <= code && code <= 0xc313) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE SSAE
                                                    if (0xc314 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xc368) {
                                        if (code < 0xc331) {
                                            if (code < 0xc330) {
                                                // Lo  [27] HANGUL SYLLABLE SSAEG..HANGUL SYLLABLE SSAEH
                                                if (0xc315 <= code && code <= 0xc32f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE SSYA
                                                if (0xc330 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc34c) {
                                                // Lo  [27] HANGUL SYLLABLE SSYAG..HANGUL SYLLABLE SSYAH
                                                if (0xc331 <= code && code <= 0xc34b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc34d) {
                                                    // Lo       HANGUL SYLLABLE SSYAE
                                                    if (0xc34c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE SSYAEG..HANGUL SYLLABLE SSYAEH
                                                    if (0xc34d <= code && code <= 0xc367) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc385) {
                                            if (code < 0xc369) {
                                                // Lo       HANGUL SYLLABLE SSEO
                                                if (0xc368 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc384) {
                                                    // Lo  [27] HANGUL SYLLABLE SSEOG..HANGUL SYLLABLE SSEOH
                                                    if (0xc369 <= code && code <= 0xc383) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE SSE
                                                    if (0xc384 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc3a0) {
                                                // Lo  [27] HANGUL SYLLABLE SSEG..HANGUL SYLLABLE SSEH
                                                if (0xc385 <= code && code <= 0xc39f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc3a1) {
                                                    // Lo       HANGUL SYLLABLE SSYEO
                                                    if (0xc3a0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE SSYEOG..HANGUL SYLLABLE SSYEOH
                                                    if (0xc3a1 <= code && code <= 0xc3bb) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0xc609) {
                            if (code < 0xc4d5) {
                                if (code < 0xc448) {
                                    if (code < 0xc3f5) {
                                        if (code < 0xc3d8) {
                                            if (code < 0xc3bd) {
                                                // Lo       HANGUL SYLLABLE SSYE
                                                if (0xc3bc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE SSYEG..HANGUL SYLLABLE SSYEH
                                                if (0xc3bd <= code && code <= 0xc3d7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc3d9) {
                                                // Lo       HANGUL SYLLABLE SSO
                                                if (0xc3d8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc3f4) {
                                                    // Lo  [27] HANGUL SYLLABLE SSOG..HANGUL SYLLABLE SSOH
                                                    if (0xc3d9 <= code && code <= 0xc3f3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE SSWA
                                                    if (0xc3f4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc411) {
                                            if (code < 0xc410) {
                                                // Lo  [27] HANGUL SYLLABLE SSWAG..HANGUL SYLLABLE SSWAH
                                                if (0xc3f5 <= code && code <= 0xc40f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE SSWAE
                                                if (0xc410 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc42c) {
                                                // Lo  [27] HANGUL SYLLABLE SSWAEG..HANGUL SYLLABLE SSWAEH
                                                if (0xc411 <= code && code <= 0xc42b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc42d) {
                                                    // Lo       HANGUL SYLLABLE SSOE
                                                    if (0xc42c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE SSOEG..HANGUL SYLLABLE SSOEH
                                                    if (0xc42d <= code && code <= 0xc447) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xc481) {
                                        if (code < 0xc464) {
                                            if (code < 0xc449) {
                                                // Lo       HANGUL SYLLABLE SSYO
                                                if (0xc448 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE SSYOG..HANGUL SYLLABLE SSYOH
                                                if (0xc449 <= code && code <= 0xc463) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc465) {
                                                // Lo       HANGUL SYLLABLE SSU
                                                if (0xc464 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc480) {
                                                    // Lo  [27] HANGUL SYLLABLE SSUG..HANGUL SYLLABLE SSUH
                                                    if (0xc465 <= code && code <= 0xc47f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE SSWEO
                                                    if (0xc480 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc4b8) {
                                            if (code < 0xc49c) {
                                                // Lo  [27] HANGUL SYLLABLE SSWEOG..HANGUL SYLLABLE SSWEOH
                                                if (0xc481 <= code && code <= 0xc49b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc49d) {
                                                    // Lo       HANGUL SYLLABLE SSWE
                                                    if (0xc49c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE SSWEG..HANGUL SYLLABLE SSWEH
                                                    if (0xc49d <= code && code <= 0xc4b7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc4b9) {
                                                // Lo       HANGUL SYLLABLE SSWI
                                                if (0xc4b8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc4d4) {
                                                    // Lo  [27] HANGUL SYLLABLE SSWIG..HANGUL SYLLABLE SSWIH
                                                    if (0xc4b9 <= code && code <= 0xc4d3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE SSYU
                                                    if (0xc4d4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xc57c) {
                                    if (code < 0xc528) {
                                        if (code < 0xc4f1) {
                                            if (code < 0xc4f0) {
                                                // Lo  [27] HANGUL SYLLABLE SSYUG..HANGUL SYLLABLE SSYUH
                                                if (0xc4d5 <= code && code <= 0xc4ef) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE SSEU
                                                if (0xc4f0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc50c) {
                                                // Lo  [27] HANGUL SYLLABLE SSEUG..HANGUL SYLLABLE SSEUH
                                                if (0xc4f1 <= code && code <= 0xc50b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc50d) {
                                                    // Lo       HANGUL SYLLABLE SSYI
                                                    if (0xc50c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE SSYIG..HANGUL SYLLABLE SSYIH
                                                    if (0xc50d <= code && code <= 0xc527) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc545) {
                                            if (code < 0xc529) {
                                                // Lo       HANGUL SYLLABLE SSI
                                                if (0xc528 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc544) {
                                                    // Lo  [27] HANGUL SYLLABLE SSIG..HANGUL SYLLABLE SSIH
                                                    if (0xc529 <= code && code <= 0xc543) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE A
                                                    if (0xc544 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc560) {
                                                // Lo  [27] HANGUL SYLLABLE AG..HANGUL SYLLABLE AH
                                                if (0xc545 <= code && code <= 0xc55f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc561) {
                                                    // Lo       HANGUL SYLLABLE AE
                                                    if (0xc560 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE AEG..HANGUL SYLLABLE AEH
                                                    if (0xc561 <= code && code <= 0xc57b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xc5b5) {
                                        if (code < 0xc598) {
                                            if (code < 0xc57d) {
                                                // Lo       HANGUL SYLLABLE YA
                                                if (0xc57c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE YAG..HANGUL SYLLABLE YAH
                                                if (0xc57d <= code && code <= 0xc597) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc599) {
                                                // Lo       HANGUL SYLLABLE YAE
                                                if (0xc598 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc5b4) {
                                                    // Lo  [27] HANGUL SYLLABLE YAEG..HANGUL SYLLABLE YAEH
                                                    if (0xc599 <= code && code <= 0xc5b3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE EO
                                                    if (0xc5b4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc5ec) {
                                            if (code < 0xc5d0) {
                                                // Lo  [27] HANGUL SYLLABLE EOG..HANGUL SYLLABLE EOH
                                                if (0xc5b5 <= code && code <= 0xc5cf) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc5d1) {
                                                    // Lo       HANGUL SYLLABLE E
                                                    if (0xc5d0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE EG..HANGUL SYLLABLE EH
                                                    if (0xc5d1 <= code && code <= 0xc5eb) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc5ed) {
                                                // Lo       HANGUL SYLLABLE YEO
                                                if (0xc5ec === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc608) {
                                                    // Lo  [27] HANGUL SYLLABLE YEOG..HANGUL SYLLABLE YEOH
                                                    if (0xc5ed <= code && code <= 0xc607) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE YE
                                                    if (0xc608 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0xc73c) {
                                if (code < 0xc695) {
                                    if (code < 0xc65c) {
                                        if (code < 0xc625) {
                                            if (code < 0xc624) {
                                                // Lo  [27] HANGUL SYLLABLE YEG..HANGUL SYLLABLE YEH
                                                if (0xc609 <= code && code <= 0xc623) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE O
                                                if (0xc624 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc640) {
                                                // Lo  [27] HANGUL SYLLABLE OG..HANGUL SYLLABLE OH
                                                if (0xc625 <= code && code <= 0xc63f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc641) {
                                                    // Lo       HANGUL SYLLABLE WA
                                                    if (0xc640 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE WAG..HANGUL SYLLABLE WAH
                                                    if (0xc641 <= code && code <= 0xc65b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc678) {
                                            if (code < 0xc65d) {
                                                // Lo       HANGUL SYLLABLE WAE
                                                if (0xc65c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE WAEG..HANGUL SYLLABLE WAEH
                                                if (0xc65d <= code && code <= 0xc677) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc679) {
                                                // Lo       HANGUL SYLLABLE OE
                                                if (0xc678 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc694) {
                                                    // Lo  [27] HANGUL SYLLABLE OEG..HANGUL SYLLABLE OEH
                                                    if (0xc679 <= code && code <= 0xc693) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE YO
                                                    if (0xc694 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xc6e8) {
                                        if (code < 0xc6b1) {
                                            if (code < 0xc6b0) {
                                                // Lo  [27] HANGUL SYLLABLE YOG..HANGUL SYLLABLE YOH
                                                if (0xc695 <= code && code <= 0xc6af) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE U
                                                if (0xc6b0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc6cc) {
                                                // Lo  [27] HANGUL SYLLABLE UG..HANGUL SYLLABLE UH
                                                if (0xc6b1 <= code && code <= 0xc6cb) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc6cd) {
                                                    // Lo       HANGUL SYLLABLE WEO
                                                    if (0xc6cc === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE WEOG..HANGUL SYLLABLE WEOH
                                                    if (0xc6cd <= code && code <= 0xc6e7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc705) {
                                            if (code < 0xc6e9) {
                                                // Lo       HANGUL SYLLABLE WE
                                                if (0xc6e8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc704) {
                                                    // Lo  [27] HANGUL SYLLABLE WEG..HANGUL SYLLABLE WEH
                                                    if (0xc6e9 <= code && code <= 0xc703) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE WI
                                                    if (0xc704 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc720) {
                                                // Lo  [27] HANGUL SYLLABLE WIG..HANGUL SYLLABLE WIH
                                                if (0xc705 <= code && code <= 0xc71f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc721) {
                                                    // Lo       HANGUL SYLLABLE YU
                                                    if (0xc720 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE YUG..HANGUL SYLLABLE YUH
                                                    if (0xc721 <= code && code <= 0xc73b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xc7c9) {
                                    if (code < 0xc775) {
                                        if (code < 0xc758) {
                                            if (code < 0xc73d) {
                                                // Lo       HANGUL SYLLABLE EU
                                                if (0xc73c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE EUG..HANGUL SYLLABLE EUH
                                                if (0xc73d <= code && code <= 0xc757) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc759) {
                                                // Lo       HANGUL SYLLABLE YI
                                                if (0xc758 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc774) {
                                                    // Lo  [27] HANGUL SYLLABLE YIG..HANGUL SYLLABLE YIH
                                                    if (0xc759 <= code && code <= 0xc773) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE I
                                                    if (0xc774 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc7ac) {
                                            if (code < 0xc790) {
                                                // Lo  [27] HANGUL SYLLABLE IG..HANGUL SYLLABLE IH
                                                if (0xc775 <= code && code <= 0xc78f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc791) {
                                                    // Lo       HANGUL SYLLABLE JA
                                                    if (0xc790 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE JAG..HANGUL SYLLABLE JAH
                                                    if (0xc791 <= code && code <= 0xc7ab) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc7ad) {
                                                // Lo       HANGUL SYLLABLE JAE
                                                if (0xc7ac === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc7c8) {
                                                    // Lo  [27] HANGUL SYLLABLE JAEG..HANGUL SYLLABLE JAEH
                                                    if (0xc7ad <= code && code <= 0xc7c7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE JYA
                                                    if (0xc7c8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xc81c) {
                                        if (code < 0xc7e5) {
                                            if (code < 0xc7e4) {
                                                // Lo  [27] HANGUL SYLLABLE JYAG..HANGUL SYLLABLE JYAH
                                                if (0xc7c9 <= code && code <= 0xc7e3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE JYAE
                                                if (0xc7e4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc800) {
                                                // Lo  [27] HANGUL SYLLABLE JYAEG..HANGUL SYLLABLE JYAEH
                                                if (0xc7e5 <= code && code <= 0xc7ff) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc801) {
                                                    // Lo       HANGUL SYLLABLE JEO
                                                    if (0xc800 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE JEOG..HANGUL SYLLABLE JEOH
                                                    if (0xc801 <= code && code <= 0xc81b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc839) {
                                            if (code < 0xc81d) {
                                                // Lo       HANGUL SYLLABLE JE
                                                if (0xc81c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc838) {
                                                    // Lo  [27] HANGUL SYLLABLE JEG..HANGUL SYLLABLE JEH
                                                    if (0xc81d <= code && code <= 0xc837) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE JYEO
                                                    if (0xc838 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc854) {
                                                // Lo  [27] HANGUL SYLLABLE JYEOG..HANGUL SYLLABLE JYEOH
                                                if (0xc839 <= code && code <= 0xc853) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc855) {
                                                    // Lo       HANGUL SYLLABLE JYE
                                                    if (0xc854 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE JYEG..HANGUL SYLLABLE JYEH
                                                    if (0xc855 <= code && code <= 0xc86f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
                else {
                    if (code < 0xcd24) {
                        if (code < 0xcabd) {
                            if (code < 0xc989) {
                                if (code < 0xc8fc) {
                                    if (code < 0xc8a9) {
                                        if (code < 0xc88c) {
                                            if (code < 0xc871) {
                                                // Lo       HANGUL SYLLABLE JO
                                                if (0xc870 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE JOG..HANGUL SYLLABLE JOH
                                                if (0xc871 <= code && code <= 0xc88b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc88d) {
                                                // Lo       HANGUL SYLLABLE JWA
                                                if (0xc88c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc8a8) {
                                                    // Lo  [27] HANGUL SYLLABLE JWAG..HANGUL SYLLABLE JWAH
                                                    if (0xc88d <= code && code <= 0xc8a7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE JWAE
                                                    if (0xc8a8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc8c5) {
                                            if (code < 0xc8c4) {
                                                // Lo  [27] HANGUL SYLLABLE JWAEG..HANGUL SYLLABLE JWAEH
                                                if (0xc8a9 <= code && code <= 0xc8c3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE JOE
                                                if (0xc8c4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc8e0) {
                                                // Lo  [27] HANGUL SYLLABLE JOEG..HANGUL SYLLABLE JOEH
                                                if (0xc8c5 <= code && code <= 0xc8df) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc8e1) {
                                                    // Lo       HANGUL SYLLABLE JYO
                                                    if (0xc8e0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE JYOG..HANGUL SYLLABLE JYOH
                                                    if (0xc8e1 <= code && code <= 0xc8fb) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xc935) {
                                        if (code < 0xc918) {
                                            if (code < 0xc8fd) {
                                                // Lo       HANGUL SYLLABLE JU
                                                if (0xc8fc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE JUG..HANGUL SYLLABLE JUH
                                                if (0xc8fd <= code && code <= 0xc917) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc919) {
                                                // Lo       HANGUL SYLLABLE JWEO
                                                if (0xc918 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc934) {
                                                    // Lo  [27] HANGUL SYLLABLE JWEOG..HANGUL SYLLABLE JWEOH
                                                    if (0xc919 <= code && code <= 0xc933) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE JWE
                                                    if (0xc934 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc96c) {
                                            if (code < 0xc950) {
                                                // Lo  [27] HANGUL SYLLABLE JWEG..HANGUL SYLLABLE JWEH
                                                if (0xc935 <= code && code <= 0xc94f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc951) {
                                                    // Lo       HANGUL SYLLABLE JWI
                                                    if (0xc950 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE JWIG..HANGUL SYLLABLE JWIH
                                                    if (0xc951 <= code && code <= 0xc96b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc96d) {
                                                // Lo       HANGUL SYLLABLE JYU
                                                if (0xc96c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc988) {
                                                    // Lo  [27] HANGUL SYLLABLE JYUG..HANGUL SYLLABLE JYUH
                                                    if (0xc96d <= code && code <= 0xc987) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE JEU
                                                    if (0xc988 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xca30) {
                                    if (code < 0xc9dc) {
                                        if (code < 0xc9a5) {
                                            if (code < 0xc9a4) {
                                                // Lo  [27] HANGUL SYLLABLE JEUG..HANGUL SYLLABLE JEUH
                                                if (0xc989 <= code && code <= 0xc9a3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE JYI
                                                if (0xc9a4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xc9c0) {
                                                // Lo  [27] HANGUL SYLLABLE JYIG..HANGUL SYLLABLE JYIH
                                                if (0xc9a5 <= code && code <= 0xc9bf) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xc9c1) {
                                                    // Lo       HANGUL SYLLABLE JI
                                                    if (0xc9c0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE JIG..HANGUL SYLLABLE JIH
                                                    if (0xc9c1 <= code && code <= 0xc9db) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xc9f9) {
                                            if (code < 0xc9dd) {
                                                // Lo       HANGUL SYLLABLE JJA
                                                if (0xc9dc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xc9f8) {
                                                    // Lo  [27] HANGUL SYLLABLE JJAG..HANGUL SYLLABLE JJAH
                                                    if (0xc9dd <= code && code <= 0xc9f7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE JJAE
                                                    if (0xc9f8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xca14) {
                                                // Lo  [27] HANGUL SYLLABLE JJAEG..HANGUL SYLLABLE JJAEH
                                                if (0xc9f9 <= code && code <= 0xca13) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xca15) {
                                                    // Lo       HANGUL SYLLABLE JJYA
                                                    if (0xca14 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE JJYAG..HANGUL SYLLABLE JJYAH
                                                    if (0xca15 <= code && code <= 0xca2f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xca69) {
                                        if (code < 0xca4c) {
                                            if (code < 0xca31) {
                                                // Lo       HANGUL SYLLABLE JJYAE
                                                if (0xca30 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE JJYAEG..HANGUL SYLLABLE JJYAEH
                                                if (0xca31 <= code && code <= 0xca4b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xca4d) {
                                                // Lo       HANGUL SYLLABLE JJEO
                                                if (0xca4c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xca68) {
                                                    // Lo  [27] HANGUL SYLLABLE JJEOG..HANGUL SYLLABLE JJEOH
                                                    if (0xca4d <= code && code <= 0xca67) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE JJE
                                                    if (0xca68 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xcaa0) {
                                            if (code < 0xca84) {
                                                // Lo  [27] HANGUL SYLLABLE JJEG..HANGUL SYLLABLE JJEH
                                                if (0xca69 <= code && code <= 0xca83) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xca85) {
                                                    // Lo       HANGUL SYLLABLE JJYEO
                                                    if (0xca84 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE JJYEOG..HANGUL SYLLABLE JJYEOH
                                                    if (0xca85 <= code && code <= 0xca9f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcaa1) {
                                                // Lo       HANGUL SYLLABLE JJYE
                                                if (0xcaa0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xcabc) {
                                                    // Lo  [27] HANGUL SYLLABLE JJYEG..HANGUL SYLLABLE JJYEH
                                                    if (0xcaa1 <= code && code <= 0xcabb) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE JJO
                                                    if (0xcabc === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0xcbf0) {
                                if (code < 0xcb49) {
                                    if (code < 0xcb10) {
                                        if (code < 0xcad9) {
                                            if (code < 0xcad8) {
                                                // Lo  [27] HANGUL SYLLABLE JJOG..HANGUL SYLLABLE JJOH
                                                if (0xcabd <= code && code <= 0xcad7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE JJWA
                                                if (0xcad8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcaf4) {
                                                // Lo  [27] HANGUL SYLLABLE JJWAG..HANGUL SYLLABLE JJWAH
                                                if (0xcad9 <= code && code <= 0xcaf3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xcaf5) {
                                                    // Lo       HANGUL SYLLABLE JJWAE
                                                    if (0xcaf4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE JJWAEG..HANGUL SYLLABLE JJWAEH
                                                    if (0xcaf5 <= code && code <= 0xcb0f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xcb2c) {
                                            if (code < 0xcb11) {
                                                // Lo       HANGUL SYLLABLE JJOE
                                                if (0xcb10 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE JJOEG..HANGUL SYLLABLE JJOEH
                                                if (0xcb11 <= code && code <= 0xcb2b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcb2d) {
                                                // Lo       HANGUL SYLLABLE JJYO
                                                if (0xcb2c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xcb48) {
                                                    // Lo  [27] HANGUL SYLLABLE JJYOG..HANGUL SYLLABLE JJYOH
                                                    if (0xcb2d <= code && code <= 0xcb47) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE JJU
                                                    if (0xcb48 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xcb9c) {
                                        if (code < 0xcb65) {
                                            if (code < 0xcb64) {
                                                // Lo  [27] HANGUL SYLLABLE JJUG..HANGUL SYLLABLE JJUH
                                                if (0xcb49 <= code && code <= 0xcb63) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE JJWEO
                                                if (0xcb64 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcb80) {
                                                // Lo  [27] HANGUL SYLLABLE JJWEOG..HANGUL SYLLABLE JJWEOH
                                                if (0xcb65 <= code && code <= 0xcb7f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xcb81) {
                                                    // Lo       HANGUL SYLLABLE JJWE
                                                    if (0xcb80 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE JJWEG..HANGUL SYLLABLE JJWEH
                                                    if (0xcb81 <= code && code <= 0xcb9b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xcbb9) {
                                            if (code < 0xcb9d) {
                                                // Lo       HANGUL SYLLABLE JJWI
                                                if (0xcb9c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xcbb8) {
                                                    // Lo  [27] HANGUL SYLLABLE JJWIG..HANGUL SYLLABLE JJWIH
                                                    if (0xcb9d <= code && code <= 0xcbb7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE JJYU
                                                    if (0xcbb8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcbd4) {
                                                // Lo  [27] HANGUL SYLLABLE JJYUG..HANGUL SYLLABLE JJYUH
                                                if (0xcbb9 <= code && code <= 0xcbd3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xcbd5) {
                                                    // Lo       HANGUL SYLLABLE JJEU
                                                    if (0xcbd4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE JJEUG..HANGUL SYLLABLE JJEUH
                                                    if (0xcbd5 <= code && code <= 0xcbef) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xcc7d) {
                                    if (code < 0xcc29) {
                                        if (code < 0xcc0c) {
                                            if (code < 0xcbf1) {
                                                // Lo       HANGUL SYLLABLE JJYI
                                                if (0xcbf0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE JJYIG..HANGUL SYLLABLE JJYIH
                                                if (0xcbf1 <= code && code <= 0xcc0b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcc0d) {
                                                // Lo       HANGUL SYLLABLE JJI
                                                if (0xcc0c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xcc28) {
                                                    // Lo  [27] HANGUL SYLLABLE JJIG..HANGUL SYLLABLE JJIH
                                                    if (0xcc0d <= code && code <= 0xcc27) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE CA
                                                    if (0xcc28 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xcc60) {
                                            if (code < 0xcc44) {
                                                // Lo  [27] HANGUL SYLLABLE CAG..HANGUL SYLLABLE CAH
                                                if (0xcc29 <= code && code <= 0xcc43) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xcc45) {
                                                    // Lo       HANGUL SYLLABLE CAE
                                                    if (0xcc44 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE CAEG..HANGUL SYLLABLE CAEH
                                                    if (0xcc45 <= code && code <= 0xcc5f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcc61) {
                                                // Lo       HANGUL SYLLABLE CYA
                                                if (0xcc60 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xcc7c) {
                                                    // Lo  [27] HANGUL SYLLABLE CYAG..HANGUL SYLLABLE CYAH
                                                    if (0xcc61 <= code && code <= 0xcc7b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE CYAE
                                                    if (0xcc7c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xccd0) {
                                        if (code < 0xcc99) {
                                            if (code < 0xcc98) {
                                                // Lo  [27] HANGUL SYLLABLE CYAEG..HANGUL SYLLABLE CYAEH
                                                if (0xcc7d <= code && code <= 0xcc97) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE CEO
                                                if (0xcc98 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xccb4) {
                                                // Lo  [27] HANGUL SYLLABLE CEOG..HANGUL SYLLABLE CEOH
                                                if (0xcc99 <= code && code <= 0xccb3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xccb5) {
                                                    // Lo       HANGUL SYLLABLE CE
                                                    if (0xccb4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE CEG..HANGUL SYLLABLE CEH
                                                    if (0xccb5 <= code && code <= 0xcccf) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xcced) {
                                            if (code < 0xccd1) {
                                                // Lo       HANGUL SYLLABLE CYEO
                                                if (0xccd0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xccec) {
                                                    // Lo  [27] HANGUL SYLLABLE CYEOG..HANGUL SYLLABLE CYEOH
                                                    if (0xccd1 <= code && code <= 0xcceb) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE CYE
                                                    if (0xccec === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcd08) {
                                                // Lo  [27] HANGUL SYLLABLE CYEG..HANGUL SYLLABLE CYEH
                                                if (0xcced <= code && code <= 0xcd07) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xcd09) {
                                                    // Lo       HANGUL SYLLABLE CO
                                                    if (0xcd08 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE COG..HANGUL SYLLABLE COH
                                                    if (0xcd09 <= code && code <= 0xcd23) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0xcf71) {
                            if (code < 0xce3d) {
                                if (code < 0xcdb0) {
                                    if (code < 0xcd5d) {
                                        if (code < 0xcd40) {
                                            if (code < 0xcd25) {
                                                // Lo       HANGUL SYLLABLE CWA
                                                if (0xcd24 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE CWAG..HANGUL SYLLABLE CWAH
                                                if (0xcd25 <= code && code <= 0xcd3f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcd41) {
                                                // Lo       HANGUL SYLLABLE CWAE
                                                if (0xcd40 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xcd5c) {
                                                    // Lo  [27] HANGUL SYLLABLE CWAEG..HANGUL SYLLABLE CWAEH
                                                    if (0xcd41 <= code && code <= 0xcd5b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE COE
                                                    if (0xcd5c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xcd79) {
                                            if (code < 0xcd78) {
                                                // Lo  [27] HANGUL SYLLABLE COEG..HANGUL SYLLABLE COEH
                                                if (0xcd5d <= code && code <= 0xcd77) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE CYO
                                                if (0xcd78 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcd94) {
                                                // Lo  [27] HANGUL SYLLABLE CYOG..HANGUL SYLLABLE CYOH
                                                if (0xcd79 <= code && code <= 0xcd93) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xcd95) {
                                                    // Lo       HANGUL SYLLABLE CU
                                                    if (0xcd94 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE CUG..HANGUL SYLLABLE CUH
                                                    if (0xcd95 <= code && code <= 0xcdaf) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xcde9) {
                                        if (code < 0xcdcc) {
                                            if (code < 0xcdb1) {
                                                // Lo       HANGUL SYLLABLE CWEO
                                                if (0xcdb0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE CWEOG..HANGUL SYLLABLE CWEOH
                                                if (0xcdb1 <= code && code <= 0xcdcb) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcdcd) {
                                                // Lo       HANGUL SYLLABLE CWE
                                                if (0xcdcc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xcde8) {
                                                    // Lo  [27] HANGUL SYLLABLE CWEG..HANGUL SYLLABLE CWEH
                                                    if (0xcdcd <= code && code <= 0xcde7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE CWI
                                                    if (0xcde8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xce20) {
                                            if (code < 0xce04) {
                                                // Lo  [27] HANGUL SYLLABLE CWIG..HANGUL SYLLABLE CWIH
                                                if (0xcde9 <= code && code <= 0xce03) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xce05) {
                                                    // Lo       HANGUL SYLLABLE CYU
                                                    if (0xce04 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE CYUG..HANGUL SYLLABLE CYUH
                                                    if (0xce05 <= code && code <= 0xce1f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xce21) {
                                                // Lo       HANGUL SYLLABLE CEU
                                                if (0xce20 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xce3c) {
                                                    // Lo  [27] HANGUL SYLLABLE CEUG..HANGUL SYLLABLE CEUH
                                                    if (0xce21 <= code && code <= 0xce3b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE CYI
                                                    if (0xce3c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xcee4) {
                                    if (code < 0xce90) {
                                        if (code < 0xce59) {
                                            if (code < 0xce58) {
                                                // Lo  [27] HANGUL SYLLABLE CYIG..HANGUL SYLLABLE CYIH
                                                if (0xce3d <= code && code <= 0xce57) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE CI
                                                if (0xce58 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xce74) {
                                                // Lo  [27] HANGUL SYLLABLE CIG..HANGUL SYLLABLE CIH
                                                if (0xce59 <= code && code <= 0xce73) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xce75) {
                                                    // Lo       HANGUL SYLLABLE KA
                                                    if (0xce74 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE KAG..HANGUL SYLLABLE KAH
                                                    if (0xce75 <= code && code <= 0xce8f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xcead) {
                                            if (code < 0xce91) {
                                                // Lo       HANGUL SYLLABLE KAE
                                                if (0xce90 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xceac) {
                                                    // Lo  [27] HANGUL SYLLABLE KAEG..HANGUL SYLLABLE KAEH
                                                    if (0xce91 <= code && code <= 0xceab) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE KYA
                                                    if (0xceac === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcec8) {
                                                // Lo  [27] HANGUL SYLLABLE KYAG..HANGUL SYLLABLE KYAH
                                                if (0xcead <= code && code <= 0xcec7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xcec9) {
                                                    // Lo       HANGUL SYLLABLE KYAE
                                                    if (0xcec8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE KYAEG..HANGUL SYLLABLE KYAEH
                                                    if (0xcec9 <= code && code <= 0xcee3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xcf1d) {
                                        if (code < 0xcf00) {
                                            if (code < 0xcee5) {
                                                // Lo       HANGUL SYLLABLE KEO
                                                if (0xcee4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE KEOG..HANGUL SYLLABLE KEOH
                                                if (0xcee5 <= code && code <= 0xceff) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcf01) {
                                                // Lo       HANGUL SYLLABLE KE
                                                if (0xcf00 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xcf1c) {
                                                    // Lo  [27] HANGUL SYLLABLE KEG..HANGUL SYLLABLE KEH
                                                    if (0xcf01 <= code && code <= 0xcf1b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE KYEO
                                                    if (0xcf1c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xcf54) {
                                            if (code < 0xcf38) {
                                                // Lo  [27] HANGUL SYLLABLE KYEOG..HANGUL SYLLABLE KYEOH
                                                if (0xcf1d <= code && code <= 0xcf37) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xcf39) {
                                                    // Lo       HANGUL SYLLABLE KYE
                                                    if (0xcf38 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE KYEG..HANGUL SYLLABLE KYEH
                                                    if (0xcf39 <= code && code <= 0xcf53) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcf55) {
                                                // Lo       HANGUL SYLLABLE KO
                                                if (0xcf54 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xcf70) {
                                                    // Lo  [27] HANGUL SYLLABLE KOG..HANGUL SYLLABLE KOH
                                                    if (0xcf55 <= code && code <= 0xcf6f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE KWA
                                                    if (0xcf70 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0xd0a4) {
                                if (code < 0xcffd) {
                                    if (code < 0xcfc4) {
                                        if (code < 0xcf8d) {
                                            if (code < 0xcf8c) {
                                                // Lo  [27] HANGUL SYLLABLE KWAG..HANGUL SYLLABLE KWAH
                                                if (0xcf71 <= code && code <= 0xcf8b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE KWAE
                                                if (0xcf8c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcfa8) {
                                                // Lo  [27] HANGUL SYLLABLE KWAEG..HANGUL SYLLABLE KWAEH
                                                if (0xcf8d <= code && code <= 0xcfa7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xcfa9) {
                                                    // Lo       HANGUL SYLLABLE KOE
                                                    if (0xcfa8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE KOEG..HANGUL SYLLABLE KOEH
                                                    if (0xcfa9 <= code && code <= 0xcfc3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xcfe0) {
                                            if (code < 0xcfc5) {
                                                // Lo       HANGUL SYLLABLE KYO
                                                if (0xcfc4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE KYOG..HANGUL SYLLABLE KYOH
                                                if (0xcfc5 <= code && code <= 0xcfdf) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xcfe1) {
                                                // Lo       HANGUL SYLLABLE KU
                                                if (0xcfe0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xcffc) {
                                                    // Lo  [27] HANGUL SYLLABLE KUG..HANGUL SYLLABLE KUH
                                                    if (0xcfe1 <= code && code <= 0xcffb) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE KWEO
                                                    if (0xcffc === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xd050) {
                                        if (code < 0xd019) {
                                            if (code < 0xd018) {
                                                // Lo  [27] HANGUL SYLLABLE KWEOG..HANGUL SYLLABLE KWEOH
                                                if (0xcffd <= code && code <= 0xd017) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE KWE
                                                if (0xd018 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd034) {
                                                // Lo  [27] HANGUL SYLLABLE KWEG..HANGUL SYLLABLE KWEH
                                                if (0xd019 <= code && code <= 0xd033) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd035) {
                                                    // Lo       HANGUL SYLLABLE KWI
                                                    if (0xd034 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE KWIG..HANGUL SYLLABLE KWIH
                                                    if (0xd035 <= code && code <= 0xd04f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xd06d) {
                                            if (code < 0xd051) {
                                                // Lo       HANGUL SYLLABLE KYU
                                                if (0xd050 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd06c) {
                                                    // Lo  [27] HANGUL SYLLABLE KYUG..HANGUL SYLLABLE KYUH
                                                    if (0xd051 <= code && code <= 0xd06b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE KEU
                                                    if (0xd06c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd088) {
                                                // Lo  [27] HANGUL SYLLABLE KEUG..HANGUL SYLLABLE KEUH
                                                if (0xd06d <= code && code <= 0xd087) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd089) {
                                                    // Lo       HANGUL SYLLABLE KYI
                                                    if (0xd088 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE KYIG..HANGUL SYLLABLE KYIH
                                                    if (0xd089 <= code && code <= 0xd0a3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xd131) {
                                    if (code < 0xd0dd) {
                                        if (code < 0xd0c0) {
                                            if (code < 0xd0a5) {
                                                // Lo       HANGUL SYLLABLE KI
                                                if (0xd0a4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE KIG..HANGUL SYLLABLE KIH
                                                if (0xd0a5 <= code && code <= 0xd0bf) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd0c1) {
                                                // Lo       HANGUL SYLLABLE TA
                                                if (0xd0c0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd0dc) {
                                                    // Lo  [27] HANGUL SYLLABLE TAG..HANGUL SYLLABLE TAH
                                                    if (0xd0c1 <= code && code <= 0xd0db) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE TAE
                                                    if (0xd0dc === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xd114) {
                                            if (code < 0xd0f8) {
                                                // Lo  [27] HANGUL SYLLABLE TAEG..HANGUL SYLLABLE TAEH
                                                if (0xd0dd <= code && code <= 0xd0f7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd0f9) {
                                                    // Lo       HANGUL SYLLABLE TYA
                                                    if (0xd0f8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE TYAG..HANGUL SYLLABLE TYAH
                                                    if (0xd0f9 <= code && code <= 0xd113) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd115) {
                                                // Lo       HANGUL SYLLABLE TYAE
                                                if (0xd114 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd130) {
                                                    // Lo  [27] HANGUL SYLLABLE TYAEG..HANGUL SYLLABLE TYAEH
                                                    if (0xd115 <= code && code <= 0xd12f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE TEO
                                                    if (0xd130 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xd184) {
                                        if (code < 0xd14d) {
                                            if (code < 0xd14c) {
                                                // Lo  [27] HANGUL SYLLABLE TEOG..HANGUL SYLLABLE TEOH
                                                if (0xd131 <= code && code <= 0xd14b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE TE
                                                if (0xd14c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd168) {
                                                // Lo  [27] HANGUL SYLLABLE TEG..HANGUL SYLLABLE TEH
                                                if (0xd14d <= code && code <= 0xd167) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd169) {
                                                    // Lo       HANGUL SYLLABLE TYEO
                                                    if (0xd168 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE TYEOG..HANGUL SYLLABLE TYEOH
                                                    if (0xd169 <= code && code <= 0xd183) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xd1a1) {
                                            if (code < 0xd185) {
                                                // Lo       HANGUL SYLLABLE TYE
                                                if (0xd184 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd1a0) {
                                                    // Lo  [27] HANGUL SYLLABLE TYEG..HANGUL SYLLABLE TYEH
                                                    if (0xd185 <= code && code <= 0xd19f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE TO
                                                    if (0xd1a0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd1bc) {
                                                // Lo  [27] HANGUL SYLLABLE TOG..HANGUL SYLLABLE TOH
                                                if (0xd1a1 <= code && code <= 0xd1bb) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd1bd) {
                                                    // Lo       HANGUL SYLLABLE TWA
                                                    if (0xd1bc === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE TWAG..HANGUL SYLLABLE TWAH
                                                    if (0xd1bd <= code && code <= 0xd1d7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
            else {
                if (code < 0x1133b) {
                    if (code < 0xd671) {
                        if (code < 0xd424) {
                            if (code < 0xd2f1) {
                                if (code < 0xd264) {
                                    if (code < 0xd211) {
                                        if (code < 0xd1f4) {
                                            if (code < 0xd1d9) {
                                                // Lo       HANGUL SYLLABLE TWAE
                                                if (0xd1d8 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE TWAEG..HANGUL SYLLABLE TWAEH
                                                if (0xd1d9 <= code && code <= 0xd1f3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd1f5) {
                                                // Lo       HANGUL SYLLABLE TOE
                                                if (0xd1f4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd210) {
                                                    // Lo  [27] HANGUL SYLLABLE TOEG..HANGUL SYLLABLE TOEH
                                                    if (0xd1f5 <= code && code <= 0xd20f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE TYO
                                                    if (0xd210 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xd22d) {
                                            if (code < 0xd22c) {
                                                // Lo  [27] HANGUL SYLLABLE TYOG..HANGUL SYLLABLE TYOH
                                                if (0xd211 <= code && code <= 0xd22b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE TU
                                                if (0xd22c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd248) {
                                                // Lo  [27] HANGUL SYLLABLE TUG..HANGUL SYLLABLE TUH
                                                if (0xd22d <= code && code <= 0xd247) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd249) {
                                                    // Lo       HANGUL SYLLABLE TWEO
                                                    if (0xd248 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE TWEOG..HANGUL SYLLABLE TWEOH
                                                    if (0xd249 <= code && code <= 0xd263) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xd29d) {
                                        if (code < 0xd280) {
                                            if (code < 0xd265) {
                                                // Lo       HANGUL SYLLABLE TWE
                                                if (0xd264 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE TWEG..HANGUL SYLLABLE TWEH
                                                if (0xd265 <= code && code <= 0xd27f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd281) {
                                                // Lo       HANGUL SYLLABLE TWI
                                                if (0xd280 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd29c) {
                                                    // Lo  [27] HANGUL SYLLABLE TWIG..HANGUL SYLLABLE TWIH
                                                    if (0xd281 <= code && code <= 0xd29b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE TYU
                                                    if (0xd29c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xd2d4) {
                                            if (code < 0xd2b8) {
                                                // Lo  [27] HANGUL SYLLABLE TYUG..HANGUL SYLLABLE TYUH
                                                if (0xd29d <= code && code <= 0xd2b7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd2b9) {
                                                    // Lo       HANGUL SYLLABLE TEU
                                                    if (0xd2b8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE TEUG..HANGUL SYLLABLE TEUH
                                                    if (0xd2b9 <= code && code <= 0xd2d3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd2d5) {
                                                // Lo       HANGUL SYLLABLE TYI
                                                if (0xd2d4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd2f0) {
                                                    // Lo  [27] HANGUL SYLLABLE TYIG..HANGUL SYLLABLE TYIH
                                                    if (0xd2d5 <= code && code <= 0xd2ef) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE TI
                                                    if (0xd2f0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xd37d) {
                                    if (code < 0xd344) {
                                        if (code < 0xd30d) {
                                            if (code < 0xd30c) {
                                                // Lo  [27] HANGUL SYLLABLE TIG..HANGUL SYLLABLE TIH
                                                if (0xd2f1 <= code && code <= 0xd30b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE PA
                                                if (0xd30c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd328) {
                                                // Lo  [27] HANGUL SYLLABLE PAG..HANGUL SYLLABLE PAH
                                                if (0xd30d <= code && code <= 0xd327) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd329) {
                                                    // Lo       HANGUL SYLLABLE PAE
                                                    if (0xd328 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE PAEG..HANGUL SYLLABLE PAEH
                                                    if (0xd329 <= code && code <= 0xd343) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xd360) {
                                            if (code < 0xd345) {
                                                // Lo       HANGUL SYLLABLE PYA
                                                if (0xd344 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE PYAG..HANGUL SYLLABLE PYAH
                                                if (0xd345 <= code && code <= 0xd35f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd361) {
                                                // Lo       HANGUL SYLLABLE PYAE
                                                if (0xd360 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd37c) {
                                                    // Lo  [27] HANGUL SYLLABLE PYAEG..HANGUL SYLLABLE PYAEH
                                                    if (0xd361 <= code && code <= 0xd37b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE PEO
                                                    if (0xd37c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xd3d0) {
                                        if (code < 0xd399) {
                                            if (code < 0xd398) {
                                                // Lo  [27] HANGUL SYLLABLE PEOG..HANGUL SYLLABLE PEOH
                                                if (0xd37d <= code && code <= 0xd397) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE PE
                                                if (0xd398 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd3b4) {
                                                // Lo  [27] HANGUL SYLLABLE PEG..HANGUL SYLLABLE PEH
                                                if (0xd399 <= code && code <= 0xd3b3) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd3b5) {
                                                    // Lo       HANGUL SYLLABLE PYEO
                                                    if (0xd3b4 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE PYEOG..HANGUL SYLLABLE PYEOH
                                                    if (0xd3b5 <= code && code <= 0xd3cf) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xd3ed) {
                                            if (code < 0xd3d1) {
                                                // Lo       HANGUL SYLLABLE PYE
                                                if (0xd3d0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd3ec) {
                                                    // Lo  [27] HANGUL SYLLABLE PYEG..HANGUL SYLLABLE PYEH
                                                    if (0xd3d1 <= code && code <= 0xd3eb) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE PO
                                                    if (0xd3ec === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd408) {
                                                // Lo  [27] HANGUL SYLLABLE POG..HANGUL SYLLABLE POH
                                                if (0xd3ed <= code && code <= 0xd407) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd409) {
                                                    // Lo       HANGUL SYLLABLE PWA
                                                    if (0xd408 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE PWAG..HANGUL SYLLABLE PWAH
                                                    if (0xd409 <= code && code <= 0xd423) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0xd53d) {
                                if (code < 0xd4b0) {
                                    if (code < 0xd45d) {
                                        if (code < 0xd440) {
                                            if (code < 0xd425) {
                                                // Lo       HANGUL SYLLABLE PWAE
                                                if (0xd424 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE PWAEG..HANGUL SYLLABLE PWAEH
                                                if (0xd425 <= code && code <= 0xd43f) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd441) {
                                                // Lo       HANGUL SYLLABLE POE
                                                if (0xd440 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd45c) {
                                                    // Lo  [27] HANGUL SYLLABLE POEG..HANGUL SYLLABLE POEH
                                                    if (0xd441 <= code && code <= 0xd45b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE PYO
                                                    if (0xd45c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xd479) {
                                            if (code < 0xd478) {
                                                // Lo  [27] HANGUL SYLLABLE PYOG..HANGUL SYLLABLE PYOH
                                                if (0xd45d <= code && code <= 0xd477) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE PU
                                                if (0xd478 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd494) {
                                                // Lo  [27] HANGUL SYLLABLE PUG..HANGUL SYLLABLE PUH
                                                if (0xd479 <= code && code <= 0xd493) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd495) {
                                                    // Lo       HANGUL SYLLABLE PWEO
                                                    if (0xd494 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE PWEOG..HANGUL SYLLABLE PWEOH
                                                    if (0xd495 <= code && code <= 0xd4af) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xd4e9) {
                                        if (code < 0xd4cc) {
                                            if (code < 0xd4b1) {
                                                // Lo       HANGUL SYLLABLE PWE
                                                if (0xd4b0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE PWEG..HANGUL SYLLABLE PWEH
                                                if (0xd4b1 <= code && code <= 0xd4cb) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd4cd) {
                                                // Lo       HANGUL SYLLABLE PWI
                                                if (0xd4cc === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd4e8) {
                                                    // Lo  [27] HANGUL SYLLABLE PWIG..HANGUL SYLLABLE PWIH
                                                    if (0xd4cd <= code && code <= 0xd4e7) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE PYU
                                                    if (0xd4e8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xd520) {
                                            if (code < 0xd504) {
                                                // Lo  [27] HANGUL SYLLABLE PYUG..HANGUL SYLLABLE PYUH
                                                if (0xd4e9 <= code && code <= 0xd503) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd505) {
                                                    // Lo       HANGUL SYLLABLE PEU
                                                    if (0xd504 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE PEUG..HANGUL SYLLABLE PEUH
                                                    if (0xd505 <= code && code <= 0xd51f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd521) {
                                                // Lo       HANGUL SYLLABLE PYI
                                                if (0xd520 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd53c) {
                                                    // Lo  [27] HANGUL SYLLABLE PYIG..HANGUL SYLLABLE PYIH
                                                    if (0xd521 <= code && code <= 0xd53b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE PI
                                                    if (0xd53c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0xd5e4) {
                                    if (code < 0xd590) {
                                        if (code < 0xd559) {
                                            if (code < 0xd558) {
                                                // Lo  [27] HANGUL SYLLABLE PIG..HANGUL SYLLABLE PIH
                                                if (0xd53d <= code && code <= 0xd557) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE HA
                                                if (0xd558 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd574) {
                                                // Lo  [27] HANGUL SYLLABLE HAG..HANGUL SYLLABLE HAH
                                                if (0xd559 <= code && code <= 0xd573) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd575) {
                                                    // Lo       HANGUL SYLLABLE HAE
                                                    if (0xd574 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE HAEG..HANGUL SYLLABLE HAEH
                                                    if (0xd575 <= code && code <= 0xd58f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xd5ad) {
                                            if (code < 0xd591) {
                                                // Lo       HANGUL SYLLABLE HYA
                                                if (0xd590 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd5ac) {
                                                    // Lo  [27] HANGUL SYLLABLE HYAG..HANGUL SYLLABLE HYAH
                                                    if (0xd591 <= code && code <= 0xd5ab) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE HYAE
                                                    if (0xd5ac === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd5c8) {
                                                // Lo  [27] HANGUL SYLLABLE HYAEG..HANGUL SYLLABLE HYAEH
                                                if (0xd5ad <= code && code <= 0xd5c7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd5c9) {
                                                    // Lo       HANGUL SYLLABLE HEO
                                                    if (0xd5c8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE HEOG..HANGUL SYLLABLE HEOH
                                                    if (0xd5c9 <= code && code <= 0xd5e3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xd61d) {
                                        if (code < 0xd600) {
                                            if (code < 0xd5e5) {
                                                // Lo       HANGUL SYLLABLE HE
                                                if (0xd5e4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE HEG..HANGUL SYLLABLE HEH
                                                if (0xd5e5 <= code && code <= 0xd5ff) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd601) {
                                                // Lo       HANGUL SYLLABLE HYEO
                                                if (0xd600 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd61c) {
                                                    // Lo  [27] HANGUL SYLLABLE HYEOG..HANGUL SYLLABLE HYEOH
                                                    if (0xd601 <= code && code <= 0xd61b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE HYE
                                                    if (0xd61c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xd654) {
                                            if (code < 0xd638) {
                                                // Lo  [27] HANGUL SYLLABLE HYEG..HANGUL SYLLABLE HYEH
                                                if (0xd61d <= code && code <= 0xd637) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd639) {
                                                    // Lo       HANGUL SYLLABLE HO
                                                    if (0xd638 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE HOG..HANGUL SYLLABLE HOH
                                                    if (0xd639 <= code && code <= 0xd653) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd655) {
                                                // Lo       HANGUL SYLLABLE HWA
                                                if (0xd654 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd670) {
                                                    // Lo  [27] HANGUL SYLLABLE HWAG..HANGUL SYLLABLE HWAH
                                                    if (0xd655 <= code && code <= 0xd66f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE HWAE
                                                    if (0xd670 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0x11000) {
                            if (code < 0xd7b0) {
                                if (code < 0xd6fd) {
                                    if (code < 0xd6c4) {
                                        if (code < 0xd68d) {
                                            if (code < 0xd68c) {
                                                // Lo  [27] HANGUL SYLLABLE HWAEG..HANGUL SYLLABLE HWAEH
                                                if (0xd671 <= code && code <= 0xd68b) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE HOE
                                                if (0xd68c === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd6a8) {
                                                // Lo  [27] HANGUL SYLLABLE HOEG..HANGUL SYLLABLE HOEH
                                                if (0xd68d <= code && code <= 0xd6a7) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd6a9) {
                                                    // Lo       HANGUL SYLLABLE HYO
                                                    if (0xd6a8 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE HYOG..HANGUL SYLLABLE HYOH
                                                    if (0xd6a9 <= code && code <= 0xd6c3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xd6e0) {
                                            if (code < 0xd6c5) {
                                                // Lo       HANGUL SYLLABLE HU
                                                if (0xd6c4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                // Lo  [27] HANGUL SYLLABLE HUG..HANGUL SYLLABLE HUH
                                                if (0xd6c5 <= code && code <= 0xd6df) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd6e1) {
                                                // Lo       HANGUL SYLLABLE HWEO
                                                if (0xd6e0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd6fc) {
                                                    // Lo  [27] HANGUL SYLLABLE HWEOG..HANGUL SYLLABLE HWEOH
                                                    if (0xd6e1 <= code && code <= 0xd6fb) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE HWE
                                                    if (0xd6fc === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0xd750) {
                                        if (code < 0xd719) {
                                            if (code < 0xd718) {
                                                // Lo  [27] HANGUL SYLLABLE HWEG..HANGUL SYLLABLE HWEH
                                                if (0xd6fd <= code && code <= 0xd717) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                // Lo       HANGUL SYLLABLE HWI
                                                if (0xd718 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd734) {
                                                // Lo  [27] HANGUL SYLLABLE HWIG..HANGUL SYLLABLE HWIH
                                                if (0xd719 <= code && code <= 0xd733) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd735) {
                                                    // Lo       HANGUL SYLLABLE HYU
                                                    if (0xd734 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE HYUG..HANGUL SYLLABLE HYUH
                                                    if (0xd735 <= code && code <= 0xd74f) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xd76d) {
                                            if (code < 0xd751) {
                                                // Lo       HANGUL SYLLABLE HEU
                                                if (0xd750 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.LV;
                                                }
                                            }
                                            else {
                                                if (code < 0xd76c) {
                                                    // Lo  [27] HANGUL SYLLABLE HEUG..HANGUL SYLLABLE HEUH
                                                    if (0xd751 <= code && code <= 0xd76b) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                                else {
                                                    // Lo       HANGUL SYLLABLE HYI
                                                    if (0xd76c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xd788) {
                                                // Lo  [27] HANGUL SYLLABLE HYIG..HANGUL SYLLABLE HYIH
                                                if (0xd76d <= code && code <= 0xd787) {
                                                    return boundaries_1.CLUSTER_BREAK.LVT;
                                                }
                                            }
                                            else {
                                                if (code < 0xd789) {
                                                    // Lo       HANGUL SYLLABLE HI
                                                    if (0xd788 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.LV;
                                                    }
                                                }
                                                else {
                                                    // Lo  [27] HANGUL SYLLABLE HIG..HANGUL SYLLABLE HIH
                                                    if (0xd789 <= code && code <= 0xd7a3) {
                                                        return boundaries_1.CLUSTER_BREAK.LVT;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0x10a01) {
                                    if (code < 0xfeff) {
                                        if (code < 0xfb1e) {
                                            if (code < 0xd7cb) {
                                                // Lo  [23] HANGUL JUNGSEONG O-YEO..HANGUL JUNGSEONG ARAEA-E
                                                if (0xd7b0 <= code && code <= 0xd7c6) {
                                                    return boundaries_1.CLUSTER_BREAK.V;
                                                }
                                            }
                                            else {
                                                // Lo  [49] HANGUL JONGSEONG NIEUN-RIEUL..HANGUL JONGSEONG PHIEUPH-THIEUTH
                                                if (0xd7cb <= code && code <= 0xd7fb) {
                                                    return boundaries_1.CLUSTER_BREAK.T;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xfe00) {
                                                // Mn       HEBREW POINT JUDEO-SPANISH VARIKA
                                                if (0xfb1e === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xfe20) {
                                                    // Mn  [16] VARIATION SELECTOR-1..VARIATION SELECTOR-16
                                                    if (0xfe00 <= code && code <= 0xfe0f) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn  [16] COMBINING LIGATURE LEFT HALF..COMBINING CYRILLIC TITLO RIGHT HALF
                                                    if (0xfe20 <= code && code <= 0xfe2f) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x101fd) {
                                            if (code < 0xff9e) {
                                                // Cf       ZERO WIDTH NO-BREAK SPACE
                                                if (0xfeff === code) {
                                                    return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                }
                                            }
                                            else {
                                                if (code < 0xfff0) {
                                                    // Lm   [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
                                                    if (0xff9e <= code && code <= 0xff9f) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Cn   [9] <reserved-FFF0>..<reserved-FFF8>
                                                    // Cf   [3] INTERLINEAR ANNOTATION ANCHOR..INTERLINEAR ANNOTATION TERMINATOR
                                                    if (0xfff0 <= code && code <= 0xfffb) {
                                                        return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x102e0) {
                                                // Mn       PHAISTOS DISC SIGN COMBINING OBLIQUE STROKE
                                                if (0x101fd === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x10376) {
                                                    // Mn       COPTIC EPACT THOUSANDS MARK
                                                    if (0x102e0 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [5] COMBINING OLD PERMIC LETTER AN..COMBINING OLD PERMIC LETTER SII
                                                    if (0x10376 <= code && code <= 0x1037a) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x10ae5) {
                                        if (code < 0x10a0c) {
                                            if (code < 0x10a05) {
                                                // Mn   [3] KHAROSHTHI VOWEL SIGN I..KHAROSHTHI VOWEL SIGN VOCALIC R
                                                if (0x10a01 <= code && code <= 0x10a03) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn   [2] KHAROSHTHI VOWEL SIGN E..KHAROSHTHI VOWEL SIGN O
                                                if (0x10a05 <= code && code <= 0x10a06) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x10a38) {
                                                // Mn   [4] KHAROSHTHI VOWEL LENGTH MARK..KHAROSHTHI SIGN VISARGA
                                                if (0x10a0c <= code && code <= 0x10a0f) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x10a3f) {
                                                    // Mn   [3] KHAROSHTHI SIGN BAR ABOVE..KHAROSHTHI SIGN DOT BELOW
                                                    if (0x10a38 <= code && code <= 0x10a3a) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn       KHAROSHTHI VIRAMA
                                                    if (0x10a3f === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x10efd) {
                                            if (code < 0x10d24) {
                                                // Mn   [2] MANICHAEAN ABBREVIATION MARK ABOVE..MANICHAEAN ABBREVIATION MARK BELOW
                                                if (0x10ae5 <= code && code <= 0x10ae6) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x10eab) {
                                                    // Mn   [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI
                                                    if (0x10d24 <= code && code <= 0x10d27) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK
                                                    if (0x10eab <= code && code <= 0x10eac) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x10f46) {
                                                // Mn   [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA
                                                if (0x10efd <= code && code <= 0x10eff) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x10f82) {
                                                    // Mn  [11] SOGDIAN COMBINING DOT BELOW..SOGDIAN COMBINING STROKE BELOW
                                                    if (0x10f46 <= code && code <= 0x10f50) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [4] OLD UYGHUR COMBINING DOT ABOVE..OLD UYGHUR COMBINING TWO DOTS BELOW
                                                    if (0x10f82 <= code && code <= 0x10f85) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0x11180) {
                                if (code < 0x110b7) {
                                    if (code < 0x11073) {
                                        if (code < 0x11002) {
                                            // Mc       BRAHMI SIGN CANDRABINDU
                                            if (0x11000 === code) {
                                                return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                            }
                                            // Mn       BRAHMI SIGN ANUSVARA
                                            if (0x11001 === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                        }
                                        else {
                                            if (code < 0x11038) {
                                                // Mc       BRAHMI SIGN VISARGA
                                                if (0x11002 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x11070) {
                                                    // Mn  [15] BRAHMI VOWEL SIGN AA..BRAHMI VIRAMA
                                                    if (0x11038 <= code && code <= 0x11046) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn       BRAHMI SIGN OLD TAMIL VIRAMA
                                                    if (0x11070 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x11082) {
                                            if (code < 0x1107f) {
                                                // Mn   [2] BRAHMI VOWEL SIGN OLD TAMIL SHORT E..BRAHMI VOWEL SIGN OLD TAMIL SHORT O
                                                if (0x11073 <= code && code <= 0x11074) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn   [3] BRAHMI NUMBER JOINER..KAITHI SIGN ANUSVARA
                                                if (0x1107f <= code && code <= 0x11081) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x110b0) {
                                                // Mc       KAITHI SIGN VISARGA
                                                if (0x11082 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x110b3) {
                                                    // Mc   [3] KAITHI VOWEL SIGN AA..KAITHI VOWEL SIGN II
                                                    if (0x110b0 <= code && code <= 0x110b2) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [4] KAITHI VOWEL SIGN U..KAITHI VOWEL SIGN AI
                                                    if (0x110b3 <= code && code <= 0x110b6) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x11100) {
                                        if (code < 0x110bd) {
                                            if (code < 0x110b9) {
                                                // Mc   [2] KAITHI VOWEL SIGN O..KAITHI VOWEL SIGN AU
                                                if (0x110b7 <= code && code <= 0x110b8) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn   [2] KAITHI SIGN VIRAMA..KAITHI SIGN NUKTA
                                                if (0x110b9 <= code && code <= 0x110ba) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x110c2) {
                                                // Cf       KAITHI NUMBER SIGN
                                                if (0x110bd === code) {
                                                    return boundaries_1.CLUSTER_BREAK.PREPEND;
                                                }
                                            }
                                            else {
                                                // Mn       KAITHI VOWEL SIGN VOCALIC R
                                                if (0x110c2 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                                // Cf       KAITHI NUMBER SIGN ABOVE
                                                if (0x110cd === code) {
                                                    return boundaries_1.CLUSTER_BREAK.PREPEND;
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x1112d) {
                                            if (code < 0x11127) {
                                                // Mn   [3] CHAKMA SIGN CANDRABINDU..CHAKMA SIGN VISARGA
                                                if (0x11100 <= code && code <= 0x11102) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1112c) {
                                                    // Mn   [5] CHAKMA VOWEL SIGN A..CHAKMA VOWEL SIGN UU
                                                    if (0x11127 <= code && code <= 0x1112b) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc       CHAKMA VOWEL SIGN E
                                                    if (0x1112c === code) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11145) {
                                                // Mn   [8] CHAKMA VOWEL SIGN AI..CHAKMA MAAYYAA
                                                if (0x1112d <= code && code <= 0x11134) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x11173) {
                                                    // Mc   [2] CHAKMA VOWEL SIGN AA..CHAKMA VOWEL SIGN EI
                                                    if (0x11145 <= code && code <= 0x11146) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn       MAHAJANI SIGN NUKTA
                                                    if (0x11173 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0x11232) {
                                    if (code < 0x111c2) {
                                        if (code < 0x111b3) {
                                            if (code < 0x11182) {
                                                // Mn   [2] SHARADA SIGN CANDRABINDU..SHARADA SIGN ANUSVARA
                                                if (0x11180 <= code && code <= 0x11181) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc       SHARADA SIGN VISARGA
                                                if (0x11182 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x111b6) {
                                                // Mc   [3] SHARADA VOWEL SIGN AA..SHARADA VOWEL SIGN II
                                                if (0x111b3 <= code && code <= 0x111b5) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x111bf) {
                                                    // Mn   [9] SHARADA VOWEL SIGN U..SHARADA VOWEL SIGN O
                                                    if (0x111b6 <= code && code <= 0x111be) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] SHARADA VOWEL SIGN AU..SHARADA SIGN VIRAMA
                                                    if (0x111bf <= code && code <= 0x111c0) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x111cf) {
                                            if (code < 0x111c9) {
                                                // Lo   [2] SHARADA SIGN JIHVAMULIYA..SHARADA SIGN UPADHMANIYA
                                                if (0x111c2 <= code && code <= 0x111c3) {
                                                    return boundaries_1.CLUSTER_BREAK.PREPEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x111ce) {
                                                    // Mn   [4] SHARADA SANDHI MARK..SHARADA EXTRA SHORT VOWEL MARK
                                                    if (0x111c9 <= code && code <= 0x111cc) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc       SHARADA VOWEL SIGN PRISHTHAMATRA E
                                                    if (0x111ce === code) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1122c) {
                                                // Mn       SHARADA SIGN INVERTED CANDRABINDU
                                                if (0x111cf === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1122f) {
                                                    // Mc   [3] KHOJKI VOWEL SIGN AA..KHOJKI VOWEL SIGN II
                                                    if (0x1122c <= code && code <= 0x1122e) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [3] KHOJKI VOWEL SIGN U..KHOJKI VOWEL SIGN AI
                                                    if (0x1122f <= code && code <= 0x11231) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x11241) {
                                        if (code < 0x11235) {
                                            if (code < 0x11234) {
                                                // Mc   [2] KHOJKI VOWEL SIGN O..KHOJKI VOWEL SIGN AU
                                                if (0x11232 <= code && code <= 0x11233) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn       KHOJKI SIGN ANUSVARA
                                                if (0x11234 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11236) {
                                                // Mc       KHOJKI SIGN VIRAMA
                                                if (0x11235 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x1123e) {
                                                    // Mn   [2] KHOJKI SIGN NUKTA..KHOJKI SIGN SHADDA
                                                    if (0x11236 <= code && code <= 0x11237) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn       KHOJKI SIGN SUKUN
                                                    if (0x1123e === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x112e3) {
                                            if (code < 0x112df) {
                                                // Mn       KHOJKI VOWEL SIGN VOCALIC R
                                                if (0x11241 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x112e0) {
                                                    // Mn       KHUDAWADI SIGN ANUSVARA
                                                    if (0x112df === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [3] KHUDAWADI VOWEL SIGN AA..KHUDAWADI VOWEL SIGN II
                                                    if (0x112e0 <= code && code <= 0x112e2) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11300) {
                                                // Mn   [8] KHUDAWADI VOWEL SIGN U..KHUDAWADI SIGN VIRAMA
                                                if (0x112e3 <= code && code <= 0x112ea) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x11302) {
                                                    // Mn   [2] GRANTHA SIGN COMBINING ANUSVARA ABOVE..GRANTHA SIGN CANDRABINDU
                                                    if (0x11300 <= code && code <= 0x11301) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] GRANTHA SIGN ANUSVARA..GRANTHA SIGN VISARGA
                                                    if (0x11302 <= code && code <= 0x11303) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
                else {
                    if (code < 0x11a97) {
                        if (code < 0x116ab) {
                            if (code < 0x114b9) {
                                if (code < 0x11370) {
                                    if (code < 0x11347) {
                                        if (code < 0x1133f) {
                                            if (code < 0x1133e) {
                                                // Mn   [2] COMBINING BINDU BELOW..GRANTHA SIGN NUKTA
                                                if (0x1133b <= code && code <= 0x1133c) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc       GRANTHA VOWEL SIGN AA
                                                if (0x1133e === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11340) {
                                                // Mc       GRANTHA VOWEL SIGN I
                                                if (0x1133f === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x11341) {
                                                    // Mn       GRANTHA VOWEL SIGN II
                                                    if (0x11340 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [4] GRANTHA VOWEL SIGN U..GRANTHA VOWEL SIGN VOCALIC RR
                                                    if (0x11341 <= code && code <= 0x11344) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x11357) {
                                            if (code < 0x1134b) {
                                                // Mc   [2] GRANTHA VOWEL SIGN EE..GRANTHA VOWEL SIGN AI
                                                if (0x11347 <= code && code <= 0x11348) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mc   [3] GRANTHA VOWEL SIGN OO..GRANTHA SIGN VIRAMA
                                                if (0x1134b <= code && code <= 0x1134d) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11362) {
                                                // Mc       GRANTHA AU LENGTH MARK
                                                if (0x11357 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x11366) {
                                                    // Mc   [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL
                                                    if (0x11362 <= code && code <= 0x11363) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX
                                                    if (0x11366 <= code && code <= 0x1136c) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x11445) {
                                        if (code < 0x11438) {
                                            if (code < 0x11435) {
                                                // Mn   [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA
                                                if (0x11370 <= code && code <= 0x11374) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc   [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II
                                                if (0x11435 <= code && code <= 0x11437) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11440) {
                                                // Mn   [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI
                                                if (0x11438 <= code && code <= 0x1143f) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x11442) {
                                                    // Mc   [2] NEWA VOWEL SIGN O..NEWA VOWEL SIGN AU
                                                    if (0x11440 <= code && code <= 0x11441) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [3] NEWA SIGN VIRAMA..NEWA SIGN ANUSVARA
                                                    if (0x11442 <= code && code <= 0x11444) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x114b0) {
                                            if (code < 0x11446) {
                                                // Mc       NEWA SIGN VISARGA
                                                if (0x11445 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn       NEWA SIGN NUKTA
                                                if (0x11446 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                                // Mn       NEWA SANDHI MARK
                                                if (0x1145e === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x114b1) {
                                                // Mc       TIRHUTA VOWEL SIGN AA
                                                if (0x114b0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x114b3) {
                                                    // Mc   [2] TIRHUTA VOWEL SIGN I..TIRHUTA VOWEL SIGN II
                                                    if (0x114b1 <= code && code <= 0x114b2) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [6] TIRHUTA VOWEL SIGN U..TIRHUTA VOWEL SIGN VOCALIC LL
                                                    if (0x114b3 <= code && code <= 0x114b8) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0x115b8) {
                                    if (code < 0x114bf) {
                                        if (code < 0x114bb) {
                                            // Mc       TIRHUTA VOWEL SIGN E
                                            if (0x114b9 === code) {
                                                return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                            }
                                            // Mn       TIRHUTA VOWEL SIGN SHORT E
                                            if (0x114ba === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                        }
                                        else {
                                            if (code < 0x114bd) {
                                                // Mc   [2] TIRHUTA VOWEL SIGN AI..TIRHUTA VOWEL SIGN O
                                                if (0x114bb <= code && code <= 0x114bc) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mc       TIRHUTA VOWEL SIGN SHORT O
                                                if (0x114bd === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                                // Mc       TIRHUTA VOWEL SIGN AU
                                                if (0x114be === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x115af) {
                                            if (code < 0x114c1) {
                                                // Mn   [2] TIRHUTA SIGN CANDRABINDU..TIRHUTA SIGN ANUSVARA
                                                if (0x114bf <= code && code <= 0x114c0) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x114c2) {
                                                    // Mc       TIRHUTA SIGN VISARGA
                                                    if (0x114c1 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] TIRHUTA SIGN VIRAMA..TIRHUTA SIGN NUKTA
                                                    if (0x114c2 <= code && code <= 0x114c3) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x115b0) {
                                                // Mc       SIDDHAM VOWEL SIGN AA
                                                if (0x115af === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x115b2) {
                                                    // Mc   [2] SIDDHAM VOWEL SIGN I..SIDDHAM VOWEL SIGN II
                                                    if (0x115b0 <= code && code <= 0x115b1) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [4] SIDDHAM VOWEL SIGN U..SIDDHAM VOWEL SIGN VOCALIC RR
                                                    if (0x115b2 <= code && code <= 0x115b5) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x11630) {
                                        if (code < 0x115be) {
                                            if (code < 0x115bc) {
                                                // Mc   [4] SIDDHAM VOWEL SIGN E..SIDDHAM VOWEL SIGN AU
                                                if (0x115b8 <= code && code <= 0x115bb) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn   [2] SIDDHAM SIGN CANDRABINDU..SIDDHAM SIGN ANUSVARA
                                                if (0x115bc <= code && code <= 0x115bd) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x115bf) {
                                                // Mc       SIDDHAM SIGN VISARGA
                                                if (0x115be === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x115dc) {
                                                    // Mn   [2] SIDDHAM SIGN VIRAMA..SIDDHAM SIGN NUKTA
                                                    if (0x115bf <= code && code <= 0x115c0) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] SIDDHAM VOWEL SIGN ALTERNATE U..SIDDHAM VOWEL SIGN ALTERNATE UU
                                                    if (0x115dc <= code && code <= 0x115dd) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x1163d) {
                                            if (code < 0x11633) {
                                                // Mc   [3] MODI VOWEL SIGN AA..MODI VOWEL SIGN II
                                                if (0x11630 <= code && code <= 0x11632) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x1163b) {
                                                    // Mn   [8] MODI VOWEL SIGN U..MODI VOWEL SIGN AI
                                                    if (0x11633 <= code && code <= 0x1163a) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] MODI VOWEL SIGN O..MODI VOWEL SIGN AU
                                                    if (0x1163b <= code && code <= 0x1163c) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1163e) {
                                                // Mn       MODI SIGN ANUSVARA
                                                if (0x1163d === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1163f) {
                                                    // Mc       MODI SIGN VISARGA
                                                    if (0x1163e === code) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] MODI SIGN VIRAMA..MODI SIGN ARDHACANDRA
                                                    if (0x1163f <= code && code <= 0x11640) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0x1193f) {
                                if (code < 0x11727) {
                                    if (code < 0x116b6) {
                                        if (code < 0x116ad) {
                                            // Mn       TAKRI SIGN ANUSVARA
                                            if (0x116ab === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                            // Mc       TAKRI SIGN VISARGA
                                            if (0x116ac === code) {
                                                return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                            }
                                        }
                                        else {
                                            if (code < 0x116ae) {
                                                // Mn       TAKRI VOWEL SIGN AA
                                                if (0x116ad === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x116b0) {
                                                    // Mc   [2] TAKRI VOWEL SIGN I..TAKRI VOWEL SIGN II
                                                    if (0x116ae <= code && code <= 0x116af) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU
                                                    if (0x116b0 <= code && code <= 0x116b5) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x1171d) {
                                            // Mc       TAKRI SIGN VIRAMA
                                            if (0x116b6 === code) {
                                                return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                            }
                                            // Mn       TAKRI SIGN NUKTA
                                            if (0x116b7 === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                        }
                                        else {
                                            if (code < 0x11722) {
                                                // Mn   [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA
                                                if (0x1171d <= code && code <= 0x1171f) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x11726) {
                                                    // Mn   [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU
                                                    if (0x11722 <= code && code <= 0x11725) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc       AHOM VOWEL SIGN E
                                                    if (0x11726 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x11930) {
                                        if (code < 0x1182f) {
                                            if (code < 0x1182c) {
                                                // Mn   [5] AHOM VOWEL SIGN AW..AHOM SIGN KILLER
                                                if (0x11727 <= code && code <= 0x1172b) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc   [3] DOGRA VOWEL SIGN AA..DOGRA VOWEL SIGN II
                                                if (0x1182c <= code && code <= 0x1182e) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11838) {
                                                // Mn   [9] DOGRA VOWEL SIGN U..DOGRA SIGN ANUSVARA
                                                if (0x1182f <= code && code <= 0x11837) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x11839) {
                                                    // Mc       DOGRA SIGN VISARGA
                                                    if (0x11838 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] DOGRA SIGN VIRAMA..DOGRA SIGN NUKTA
                                                    if (0x11839 <= code && code <= 0x1183a) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x1193b) {
                                            if (code < 0x11931) {
                                                // Mc       DIVES AKURU VOWEL SIGN AA
                                                if (0x11930 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x11937) {
                                                    // Mc   [5] DIVES AKURU VOWEL SIGN I..DIVES AKURU VOWEL SIGN E
                                                    if (0x11931 <= code && code <= 0x11935) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] DIVES AKURU VOWEL SIGN AI..DIVES AKURU VOWEL SIGN O
                                                    if (0x11937 <= code && code <= 0x11938) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1193d) {
                                                // Mn   [2] DIVES AKURU SIGN ANUSVARA..DIVES AKURU SIGN CANDRABINDU
                                                if (0x1193b <= code && code <= 0x1193c) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc       DIVES AKURU SIGN HALANTA
                                                if (0x1193d === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                                // Mn       DIVES AKURU VIRAMA
                                                if (0x1193e === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0x11a01) {
                                    if (code < 0x119d1) {
                                        if (code < 0x11941) {
                                            // Lo       DIVES AKURU PREFIXED NASAL SIGN
                                            if (0x1193f === code) {
                                                return boundaries_1.CLUSTER_BREAK.PREPEND;
                                            }
                                            // Mc       DIVES AKURU MEDIAL YA
                                            if (0x11940 === code) {
                                                return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                            }
                                        }
                                        else {
                                            if (code < 0x11942) {
                                                // Lo       DIVES AKURU INITIAL RA
                                                if (0x11941 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.PREPEND;
                                                }
                                            }
                                            else {
                                                // Mc       DIVES AKURU MEDIAL RA
                                                if (0x11942 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                                // Mn       DIVES AKURU SIGN NUKTA
                                                if (0x11943 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x119dc) {
                                            if (code < 0x119d4) {
                                                // Mc   [3] NANDINAGARI VOWEL SIGN AA..NANDINAGARI VOWEL SIGN II
                                                if (0x119d1 <= code && code <= 0x119d3) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x119da) {
                                                    // Mn   [4] NANDINAGARI VOWEL SIGN U..NANDINAGARI VOWEL SIGN VOCALIC RR
                                                    if (0x119d4 <= code && code <= 0x119d7) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] NANDINAGARI VOWEL SIGN E..NANDINAGARI VOWEL SIGN AI
                                                    if (0x119da <= code && code <= 0x119db) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x119e0) {
                                                // Mc   [4] NANDINAGARI VOWEL SIGN O..NANDINAGARI SIGN VISARGA
                                                if (0x119dc <= code && code <= 0x119df) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn       NANDINAGARI SIGN VIRAMA
                                                if (0x119e0 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                                // Mc       NANDINAGARI VOWEL SIGN PRISHTHAMATRA E
                                                if (0x119e4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x11a47) {
                                        if (code < 0x11a39) {
                                            if (code < 0x11a33) {
                                                // Mn  [10] ZANABAZAR SQUARE VOWEL SIGN I..ZANABAZAR SQUARE VOWEL LENGTH MARK
                                                if (0x11a01 <= code && code <= 0x11a0a) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn   [6] ZANABAZAR SQUARE FINAL CONSONANT MARK..ZANABAZAR SQUARE SIGN ANUSVARA
                                                if (0x11a33 <= code && code <= 0x11a38) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11a3a) {
                                                // Mc       ZANABAZAR SQUARE SIGN VISARGA
                                                if (0x11a39 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x11a3b) {
                                                    // Lo       ZANABAZAR SQUARE CLUSTER-INITIAL LETTER RA
                                                    if (0x11a3a === code) {
                                                        return boundaries_1.CLUSTER_BREAK.PREPEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [4] ZANABAZAR SQUARE CLUSTER-FINAL LETTER YA..ZANABAZAR SQUARE CLUSTER-FINAL LETTER VA
                                                    if (0x11a3b <= code && code <= 0x11a3e) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x11a59) {
                                            if (code < 0x11a51) {
                                                // Mn       ZANABAZAR SQUARE SUBJOINER
                                                if (0x11a47 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x11a57) {
                                                    // Mn   [6] SOYOMBO VOWEL SIGN I..SOYOMBO VOWEL SIGN OE
                                                    if (0x11a51 <= code && code <= 0x11a56) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] SOYOMBO VOWEL SIGN AI..SOYOMBO VOWEL SIGN AU
                                                    if (0x11a57 <= code && code <= 0x11a58) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11a84) {
                                                // Mn   [3] SOYOMBO VOWEL SIGN VOCALIC R..SOYOMBO VOWEL LENGTH MARK
                                                if (0x11a59 <= code && code <= 0x11a5b) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x11a8a) {
                                                    // Lo   [6] SOYOMBO SIGN JIHVAMULIYA..SOYOMBO CLUSTER-INITIAL LETTER SA
                                                    if (0x11a84 <= code && code <= 0x11a89) {
                                                        return boundaries_1.CLUSTER_BREAK.PREPEND;
                                                    }
                                                }
                                                else {
                                                    // Mn  [13] SOYOMBO FINAL CONSONANT SIGN G..SOYOMBO SIGN ANUSVARA
                                                    if (0x11a8a <= code && code <= 0x11a96) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0x16f51) {
                            if (code < 0x11d90) {
                                if (code < 0x11cb1) {
                                    if (code < 0x11c3e) {
                                        if (code < 0x11c2f) {
                                            if (code < 0x11a98) {
                                                // Mc       SOYOMBO SIGN VISARGA
                                                if (0x11a97 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn   [2] SOYOMBO GEMINATION MARK..SOYOMBO SUBJOINER
                                                if (0x11a98 <= code && code <= 0x11a99) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11c30) {
                                                // Mc       BHAIKSUKI VOWEL SIGN AA
                                                if (0x11c2f === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x11c38) {
                                                    // Mn   [7] BHAIKSUKI VOWEL SIGN I..BHAIKSUKI VOWEL SIGN VOCALIC L
                                                    if (0x11c30 <= code && code <= 0x11c36) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [6] BHAIKSUKI VOWEL SIGN E..BHAIKSUKI SIGN ANUSVARA
                                                    if (0x11c38 <= code && code <= 0x11c3d) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x11c92) {
                                            // Mc       BHAIKSUKI SIGN VISARGA
                                            if (0x11c3e === code) {
                                                return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                            }
                                            // Mn       BHAIKSUKI SIGN VIRAMA
                                            if (0x11c3f === code) {
                                                return boundaries_1.CLUSTER_BREAK.EXTEND;
                                            }
                                        }
                                        else {
                                            if (code < 0x11ca9) {
                                                // Mn  [22] MARCHEN SUBJOINED LETTER KA..MARCHEN SUBJOINED LETTER ZA
                                                if (0x11c92 <= code && code <= 0x11ca7) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x11caa) {
                                                    // Mc       MARCHEN SUBJOINED LETTER YA
                                                    if (0x11ca9 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [7] MARCHEN SUBJOINED LETTER RA..MARCHEN VOWEL SIGN AA
                                                    if (0x11caa <= code && code <= 0x11cb0) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x11d3a) {
                                        if (code < 0x11cb4) {
                                            if (code < 0x11cb2) {
                                                // Mc       MARCHEN VOWEL SIGN I
                                                if (0x11cb1 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn   [2] MARCHEN VOWEL SIGN U..MARCHEN VOWEL SIGN E
                                                if (0x11cb2 <= code && code <= 0x11cb3) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11cb5) {
                                                // Mc       MARCHEN VOWEL SIGN O
                                                if (0x11cb4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                if (code < 0x11d31) {
                                                    // Mn   [2] MARCHEN SIGN ANUSVARA..MARCHEN SIGN CANDRABINDU
                                                    if (0x11cb5 <= code && code <= 0x11cb6) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [6] MASARAM GONDI VOWEL SIGN AA..MASARAM GONDI VOWEL SIGN VOCALIC R
                                                    if (0x11d31 <= code && code <= 0x11d36) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x11d46) {
                                            if (code < 0x11d3c) {
                                                // Mn       MASARAM GONDI VOWEL SIGN E
                                                if (0x11d3a === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x11d3f) {
                                                    // Mn   [2] MASARAM GONDI VOWEL SIGN AI..MASARAM GONDI VOWEL SIGN O
                                                    if (0x11d3c <= code && code <= 0x11d3d) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [7] MASARAM GONDI VOWEL SIGN AU..MASARAM GONDI VIRAMA
                                                    if (0x11d3f <= code && code <= 0x11d45) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11d47) {
                                                // Lo       MASARAM GONDI REPHA
                                                if (0x11d46 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.PREPEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x11d8a) {
                                                    // Mn       MASARAM GONDI RA-KARA
                                                    if (0x11d47 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mc   [5] GUNJALA GONDI VOWEL SIGN AA..GUNJALA GONDI VOWEL SIGN UU
                                                    if (0x11d8a <= code && code <= 0x11d8e) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0x11f36) {
                                    if (code < 0x11ef3) {
                                        if (code < 0x11d95) {
                                            if (code < 0x11d93) {
                                                // Mn   [2] GUNJALA GONDI VOWEL SIGN EE..GUNJALA GONDI VOWEL SIGN AI
                                                if (0x11d90 <= code && code <= 0x11d91) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc   [2] GUNJALA GONDI VOWEL SIGN OO..GUNJALA GONDI VOWEL SIGN AU
                                                if (0x11d93 <= code && code <= 0x11d94) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11d96) {
                                                // Mn       GUNJALA GONDI SIGN ANUSVARA
                                                if (0x11d95 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc       GUNJALA GONDI SIGN VISARGA
                                                if (0x11d96 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                                // Mn       GUNJALA GONDI VIRAMA
                                                if (0x11d97 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x11f02) {
                                            if (code < 0x11ef5) {
                                                // Mn   [2] MAKASAR VOWEL SIGN I..MAKASAR VOWEL SIGN U
                                                if (0x11ef3 <= code && code <= 0x11ef4) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x11f00) {
                                                    // Mc   [2] MAKASAR VOWEL SIGN E..MAKASAR VOWEL SIGN O
                                                    if (0x11ef5 <= code && code <= 0x11ef6) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] KAWI SIGN CANDRABINDU..KAWI SIGN ANUSVARA
                                                    if (0x11f00 <= code && code <= 0x11f01) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11f03) {
                                                // Lo       KAWI SIGN REPHA
                                                if (0x11f02 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.PREPEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x11f34) {
                                                    // Mc       KAWI SIGN VISARGA
                                                    if (0x11f03 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mc   [2] KAWI VOWEL SIGN AA..KAWI VOWEL SIGN ALTERNATE AA
                                                    if (0x11f34 <= code && code <= 0x11f35) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x13430) {
                                        if (code < 0x11f40) {
                                            if (code < 0x11f3e) {
                                                // Mn   [5] KAWI VOWEL SIGN I..KAWI VOWEL SIGN VOCALIC R
                                                if (0x11f36 <= code && code <= 0x11f3a) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc   [2] KAWI VOWEL SIGN E..KAWI VOWEL SIGN AI
                                                if (0x11f3e <= code && code <= 0x11f3f) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x11f41) {
                                                // Mn       KAWI VOWEL SIGN EU
                                                if (0x11f40 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc       KAWI SIGN KILLER
                                                if (0x11f41 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                                // Mn       KAWI CONJOINER
                                                if (0x11f42 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x16af0) {
                                            if (code < 0x13440) {
                                                // Cf  [16] EGYPTIAN HIEROGLYPH VERTICAL JOINER..EGYPTIAN HIEROGLYPH END WALLED ENCLOSURE
                                                if (0x13430 <= code && code <= 0x1343f) {
                                                    return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                }
                                            }
                                            else {
                                                if (code < 0x13447) {
                                                    // Mn       EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY
                                                    if (0x13440 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn  [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED
                                                    if (0x13447 <= code && code <= 0x13455) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x16b30) {
                                                // Mn   [5] BASSA VAH COMBINING HIGH TONE..BASSA VAH COMBINING HIGH-LOW TONE
                                                if (0x16af0 <= code && code <= 0x16af4) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x16f4f) {
                                                    // Mn   [7] PAHAWH HMONG MARK CIM TUB..PAHAWH HMONG MARK CIM TAUM
                                                    if (0x16b30 <= code && code <= 0x16b36) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn       MIAO SIGN CONSONANT MODIFIER BAR
                                                    if (0x16f4f === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else {
                            if (code < 0x1da84) {
                                if (code < 0x1d167) {
                                    if (code < 0x1bca0) {
                                        if (code < 0x16fe4) {
                                            if (code < 0x16f8f) {
                                                // Mc  [55] MIAO SIGN ASPIRATION..MIAO VOWEL SIGN UI
                                                if (0x16f51 <= code && code <= 0x16f87) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                            else {
                                                // Mn   [4] MIAO TONE RIGHT..MIAO TONE BELOW
                                                if (0x16f8f <= code && code <= 0x16f92) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x16ff0) {
                                                // Mn       KHITAN SMALL SCRIPT FILLER
                                                if (0x16fe4 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1bc9d) {
                                                    // Mc   [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY
                                                    if (0x16ff0 <= code && code <= 0x16ff1) {
                                                        return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                    }
                                                }
                                                else {
                                                    // Mn   [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK
                                                    if (0x1bc9d <= code && code <= 0x1bc9e) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x1cf30) {
                                            if (code < 0x1cf00) {
                                                // Cf   [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP
                                                if (0x1bca0 <= code && code <= 0x1bca3) {
                                                    return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                }
                                            }
                                            else {
                                                // Mn  [46] ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT..ZNAMENNY COMBINING MARK KRYZH ON LEFT
                                                if (0x1cf00 <= code && code <= 0x1cf2d) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1d165) {
                                                // Mn  [23] ZNAMENNY COMBINING TONAL RANGE MARK MRACHNO..ZNAMENNY PRIZNAK MODIFIER ROG
                                                if (0x1cf30 <= code && code <= 0x1cf46) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc       MUSICAL SYMBOL COMBINING STEM
                                                if (0x1d165 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                                // Mc       MUSICAL SYMBOL COMBINING SPRECHGESANG STEM
                                                if (0x1d166 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x1d185) {
                                        if (code < 0x1d16e) {
                                            if (code < 0x1d16d) {
                                                // Mn   [3] MUSICAL SYMBOL COMBINING TREMOLO-1..MUSICAL SYMBOL COMBINING TREMOLO-3
                                                if (0x1d167 <= code && code <= 0x1d169) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mc       MUSICAL SYMBOL COMBINING AUGMENTATION DOT
                                                if (0x1d16d === code) {
                                                    return boundaries_1.CLUSTER_BREAK.SPACINGMARK;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1d173) {
                                                // Mc   [5] MUSICAL SYMBOL COMBINING FLAG-1..MUSICAL SYMBOL COMBINING FLAG-5
                                                if (0x1d16e <= code && code <= 0x1d172) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1d17b) {
                                                    // Cf   [8] MUSICAL SYMBOL BEGIN BEAM..MUSICAL SYMBOL END PHRASE
                                                    if (0x1d173 <= code && code <= 0x1d17a) {
                                                        return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                    }
                                                }
                                                else {
                                                    // Mn   [8] MUSICAL SYMBOL COMBINING ACCENT..MUSICAL SYMBOL COMBINING LOURE
                                                    if (0x1d17b <= code && code <= 0x1d182) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x1da00) {
                                            if (code < 0x1d1aa) {
                                                // Mn   [7] MUSICAL SYMBOL COMBINING DOIT..MUSICAL SYMBOL COMBINING TRIPLE TONGUE
                                                if (0x1d185 <= code && code <= 0x1d18b) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1d242) {
                                                    // Mn   [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO
                                                    if (0x1d1aa <= code && code <= 0x1d1ad) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [3] COMBINING GREEK MUSICAL TRISEME..COMBINING GREEK MUSICAL PENTASEME
                                                    if (0x1d242 <= code && code <= 0x1d244) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1da3b) {
                                                // Mn  [55] SIGNWRITING HEAD RIM..SIGNWRITING AIR SUCKING IN
                                                if (0x1da00 <= code && code <= 0x1da36) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1da75) {
                                                    // Mn  [50] SIGNWRITING MOUTH CLOSED NEUTRAL..SIGNWRITING EXCITEMENT
                                                    if (0x1da3b <= code && code <= 0x1da6c) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn       SIGNWRITING UPPER BODY TILTING FROM HIP JOINTS
                                                    if (0x1da75 === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else {
                                if (code < 0x1e2ec) {
                                    if (code < 0x1e01b) {
                                        if (code < 0x1daa1) {
                                            if (code < 0x1da9b) {
                                                // Mn       SIGNWRITING LOCATION HEAD NECK
                                                if (0x1da84 === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn   [5] SIGNWRITING FILL MODIFIER-2..SIGNWRITING FILL MODIFIER-6
                                                if (0x1da9b <= code && code <= 0x1da9f) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1e000) {
                                                // Mn  [15] SIGNWRITING ROTATION MODIFIER-2..SIGNWRITING ROTATION MODIFIER-16
                                                if (0x1daa1 <= code && code <= 0x1daaf) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1e008) {
                                                    // Mn   [7] COMBINING GLAGOLITIC LETTER AZU..COMBINING GLAGOLITIC LETTER ZHIVETE
                                                    if (0x1e000 <= code && code <= 0x1e006) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn  [17] COMBINING GLAGOLITIC LETTER ZEMLJA..COMBINING GLAGOLITIC LETTER HERU
                                                    if (0x1e008 <= code && code <= 0x1e018) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0x1e08f) {
                                            if (code < 0x1e023) {
                                                // Mn   [7] COMBINING GLAGOLITIC LETTER SHTA..COMBINING GLAGOLITIC LETTER YATI
                                                if (0x1e01b <= code && code <= 0x1e021) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1e026) {
                                                    // Mn   [2] COMBINING GLAGOLITIC LETTER YU..COMBINING GLAGOLITIC LETTER SMALL YUS
                                                    if (0x1e023 <= code && code <= 0x1e024) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn   [5] COMBINING GLAGOLITIC LETTER YO..COMBINING GLAGOLITIC LETTER FITA
                                                    if (0x1e026 <= code && code <= 0x1e02a) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1e130) {
                                                // Mn       COMBINING CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
                                                if (0x1e08f === code) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1e2ae) {
                                                    // Mn   [7] NYIAKENG PUACHUE HMONG TONE-B..NYIAKENG PUACHUE HMONG TONE-D
                                                    if (0x1e130 <= code && code <= 0x1e136) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Mn       TOTO SIGN RISING TONE
                                                    if (0x1e2ae === code) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                else {
                                    if (code < 0x1f3fb) {
                                        if (code < 0x1e8d0) {
                                            if (code < 0x1e4ec) {
                                                // Mn   [4] WANCHO TONE TUP..WANCHO TONE KOINI
                                                if (0x1e2ec <= code && code <= 0x1e2ef) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                // Mn   [4] NAG MUNDARI SIGN MUHOR..NAG MUNDARI SIGN SUTUH
                                                if (0x1e4ec <= code && code <= 0x1e4ef) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0x1e944) {
                                                // Mn   [7] MENDE KIKAKUI COMBINING NUMBER TEENS..MENDE KIKAKUI COMBINING NUMBER MILLIONS
                                                if (0x1e8d0 <= code && code <= 0x1e8d6) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0x1f1e6) {
                                                    // Mn   [7] ADLAM ALIF LENGTHENER..ADLAM NUKTA
                                                    if (0x1e944 <= code && code <= 0x1e94a) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // So  [26] REGIONAL INDICATOR SYMBOL LETTER A..REGIONAL INDICATOR SYMBOL LETTER Z
                                                    if (0x1f1e6 <= code && code <= 0x1f1ff) {
                                                        return boundaries_1.CLUSTER_BREAK.REGIONAL_INDICATOR;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    else {
                                        if (code < 0xe0080) {
                                            if (code < 0xe0000) {
                                                // Sk   [5] EMOJI MODIFIER FITZPATRICK TYPE-1-2..EMOJI MODIFIER FITZPATRICK TYPE-6
                                                if (0x1f3fb <= code && code <= 0x1f3ff) {
                                                    return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                }
                                            }
                                            else {
                                                if (code < 0xe0020) {
                                                    // Cn       <reserved-E0000>
                                                    // Cf       LANGUAGE TAG
                                                    // Cn  [30] <reserved-E0002>..<reserved-E001F>
                                                    if (0xe0000 <= code && code <= 0xe001f) {
                                                        return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                    }
                                                }
                                                else {
                                                    // Cf  [96] TAG SPACE..CANCEL TAG
                                                    if (0xe0020 <= code && code <= 0xe007f) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                            }
                                        }
                                        else {
                                            if (code < 0xe0100) {
                                                // Cn [128] <reserved-E0080>..<reserved-E00FF>
                                                if (0xe0080 <= code && code <= 0xe00ff) {
                                                    return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                }
                                            }
                                            else {
                                                if (code < 0xe01f0) {
                                                    // Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256
                                                    if (0xe0100 <= code && code <= 0xe01ef) {
                                                        return boundaries_1.CLUSTER_BREAK.EXTEND;
                                                    }
                                                }
                                                else {
                                                    // Cn [3600] <reserved-E01F0>..<reserved-E0FFF>
                                                    if (0xe01f0 <= code && code <= 0xe0fff) {
                                                        return boundaries_1.CLUSTER_BREAK.CONTROL;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        // unlisted code points are treated as a break property of "Other"
        return boundaries_1.CLUSTER_BREAK.OTHER;
    }
    /**
     * Given a Unicode code point, returns if symbol is an extended pictographic or some other break
     * @param code {number} Unicode code point
     * @returns {number}
     */
    static getEmojiProperty(code) {
        // emoji property taken from:
        // https://www.unicode.org/Public/UCD/latest/ucd/emoji/emoji-data.txt
        // and generated by
        // node ./scripts/generate-emoji-extended-pictographic.js
        if (code < 0x27b0) {
            if (code < 0x2600) {
                if (code < 0x2328) {
                    if (code < 0x2122) {
                        if (code < 0x203c) {
                            // E0.6   [1] (©️)       copyright
                            if (0xa9 === code) {
                                return boundaries_1.EXTENDED_PICTOGRAPHIC;
                            }
                            // E0.6   [1] (®️)       registered
                            if (0xae === code) {
                                return boundaries_1.EXTENDED_PICTOGRAPHIC;
                            }
                        }
                        else {
                            // E0.6   [1] (‼️)       double exclamation mark
                            if (0x203c === code) {
                                return boundaries_1.EXTENDED_PICTOGRAPHIC;
                            }
                            // E0.6   [1] (⁉️)       exclamation question mark
                            if (0x2049 === code) {
                                return boundaries_1.EXTENDED_PICTOGRAPHIC;
                            }
                        }
                    }
                    else {
                        if (code < 0x2194) {
                            // E0.6   [1] (™️)       trade mark
                            if (0x2122 === code) {
                                return boundaries_1.EXTENDED_PICTOGRAPHIC;
                            }
                            // E0.6   [1] (ℹ️)       information
                            if (0x2139 === code) {
                                return boundaries_1.EXTENDED_PICTOGRAPHIC;
                            }
                        }
                        else {
                            if (code < 0x21a9) {
                                // E0.6   [6] (↔️..↙️)    left-right arrow..down-left arrow
                                if (0x2194 <= code && code <= 0x2199) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                if (code < 0x231a) {
                                    // E0.6   [2] (↩️..↪️)    right arrow curving left..left arrow curving right
                                    if (0x21a9 <= code && code <= 0x21aa) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                                else {
                                    // E0.6   [2] (⌚..⌛)    watch..hourglass done
                                    if (0x231a <= code && code <= 0x231b) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                            }
                        }
                    }
                }
                else {
                    if (code < 0x24c2) {
                        if (code < 0x23cf) {
                            // E1.0   [1] (⌨️)       keyboard
                            if (0x2328 === code) {
                                return boundaries_1.EXTENDED_PICTOGRAPHIC;
                            }
                            // E0.0   [1] (⎈)       HELM SYMBOL
                            if (0x2388 === code) {
                                return boundaries_1.EXTENDED_PICTOGRAPHIC;
                            }
                        }
                        else {
                            if (code < 0x23e9) {
                                // E1.0   [1] (⏏️)       eject button
                                if (0x23cf === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                if (code < 0x23f8) {
                                    // E0.6   [4] (⏩..⏬)    fast-forward button..fast down button
                                    // E0.7   [2] (⏭️..⏮️)    next track button..last track button
                                    // E1.0   [1] (⏯️)       play or pause button
                                    // E0.6   [1] (⏰)       alarm clock
                                    // E1.0   [2] (⏱️..⏲️)    stopwatch..timer clock
                                    // E0.6   [1] (⏳)       hourglass not done
                                    if (0x23e9 <= code && code <= 0x23f3) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                                else {
                                    // E0.7   [3] (⏸️..⏺️)    pause button..record button
                                    if (0x23f8 <= code && code <= 0x23fa) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0x25b6) {
                            if (code < 0x25aa) {
                                // E0.6   [1] (Ⓜ️)       circled M
                                if (0x24c2 === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                // E0.6   [2] (▪️..▫️)    black small square..white small square
                                if (0x25aa <= code && code <= 0x25ab) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                        }
                        else {
                            if (code < 0x25c0) {
                                // E0.6   [1] (▶️)       play button
                                if (0x25b6 === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                if (code < 0x25fb) {
                                    // E0.6   [1] (◀️)       reverse button
                                    if (0x25c0 === code) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                                else {
                                    // E0.6   [4] (◻️..◾)    white medium square..black medium-small square
                                    if (0x25fb <= code && code <= 0x25fe) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                            }
                        }
                    }
                }
            }
            else {
                if (code < 0x2733) {
                    if (code < 0x2714) {
                        if (code < 0x2614) {
                            if (code < 0x2607) {
                                // E0.6   [2] (☀️..☁️)    sun..cloud
                                // E0.7   [2] (☂️..☃️)    umbrella..snowman
                                // E1.0   [1] (☄️)       comet
                                // E0.0   [1] (★)       BLACK STAR
                                if (0x2600 <= code && code <= 0x2605) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                // E0.0   [7] (☇..☍)    LIGHTNING..OPPOSITION
                                // E0.6   [1] (☎️)       telephone
                                // E0.0   [2] (☏..☐)    WHITE TELEPHONE..BALLOT BOX
                                // E0.6   [1] (☑️)       check box with check
                                // E0.0   [1] (☒)       BALLOT BOX WITH X
                                if (0x2607 <= code && code <= 0x2612) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                        }
                        else {
                            if (code < 0x2690) {
                                // E0.6   [2] (☔..☕)    umbrella with rain drops..hot beverage
                                // E0.0   [2] (☖..☗)    WHITE SHOGI PIECE..BLACK SHOGI PIECE
                                // E1.0   [1] (☘️)       shamrock
                                // E0.0   [4] (☙..☜)    REVERSED ROTATED FLORAL HEART BULLET..WHITE LEFT POINTING INDEX
                                // E0.6   [1] (☝️)       index pointing up
                                // E0.0   [2] (☞..☟)    WHITE RIGHT POINTING INDEX..WHITE DOWN POINTING INDEX
                                // E1.0   [1] (☠️)       skull and crossbones
                                // E0.0   [1] (☡)       CAUTION SIGN
                                // E1.0   [2] (☢️..☣️)    radioactive..biohazard
                                // E0.0   [2] (☤..☥)    CADUCEUS..ANKH
                                // E1.0   [1] (☦️)       orthodox cross
                                // E0.0   [3] (☧..☩)    CHI RHO..CROSS OF JERUSALEM
                                // E0.7   [1] (☪️)       star and crescent
                                // E0.0   [3] (☫..☭)    FARSI SYMBOL..HAMMER AND SICKLE
                                // E1.0   [1] (☮️)       peace symbol
                                // E0.7   [1] (☯️)       yin yang
                                // E0.0   [8] (☰..☷)    TRIGRAM FOR HEAVEN..TRIGRAM FOR EARTH
                                // E0.7   [2] (☸️..☹️)    wheel of dharma..frowning face
                                // E0.6   [1] (☺️)       smiling face
                                // E0.0   [5] (☻..☿)    BLACK SMILING FACE..MERCURY
                                // E4.0   [1] (♀️)       female sign
                                // E0.0   [1] (♁)       EARTH
                                // E4.0   [1] (♂️)       male sign
                                // E0.0   [5] (♃..♇)    JUPITER..PLUTO
                                // E0.6  [12] (♈..♓)    Aries..Pisces
                                // E0.0  [11] (♔..♞)    WHITE CHESS KING..BLACK CHESS KNIGHT
                                // E11.0  [1] (♟️)       chess pawn
                                // E0.6   [1] (♠️)       spade suit
                                // E0.0   [2] (♡..♢)    WHITE HEART SUIT..WHITE DIAMOND SUIT
                                // E0.6   [1] (♣️)       club suit
                                // E0.0   [1] (♤)       WHITE SPADE SUIT
                                // E0.6   [2] (♥️..♦️)    heart suit..diamond suit
                                // E0.0   [1] (♧)       WHITE CLUB SUIT
                                // E0.6   [1] (♨️)       hot springs
                                // E0.0  [18] (♩..♺)    QUARTER NOTE..RECYCLING SYMBOL FOR GENERIC MATERIALS
                                // E0.6   [1] (♻️)       recycling symbol
                                // E0.0   [2] (♼..♽)    RECYCLED PAPER SYMBOL..PARTIALLY-RECYCLED PAPER SYMBOL
                                // E11.0  [1] (♾️)       infinity
                                // E0.6   [1] (♿)       wheelchair symbol
                                // E0.0   [6] (⚀..⚅)    DIE FACE-1..DIE FACE-6
                                if (0x2614 <= code && code <= 0x2685) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                if (code < 0x2708) {
                                    // E0.0   [2] (⚐..⚑)    WHITE FLAG..BLACK FLAG
                                    // E1.0   [1] (⚒️)       hammer and pick
                                    // E0.6   [1] (⚓)       anchor
                                    // E1.0   [1] (⚔️)       crossed swords
                                    // E4.0   [1] (⚕️)       medical symbol
                                    // E1.0   [2] (⚖️..⚗️)    balance scale..alembic
                                    // E0.0   [1] (⚘)       FLOWER
                                    // E1.0   [1] (⚙️)       gear
                                    // E0.0   [1] (⚚)       STAFF OF HERMES
                                    // E1.0   [2] (⚛️..⚜️)    atom symbol..fleur-de-lis
                                    // E0.0   [3] (⚝..⚟)    OUTLINED WHITE STAR..THREE LINES CONVERGING LEFT
                                    // E0.6   [2] (⚠️..⚡)    warning..high voltage
                                    // E0.0   [5] (⚢..⚦)    DOUBLED FEMALE SIGN..MALE WITH STROKE SIGN
                                    // E13.0  [1] (⚧️)       transgender symbol
                                    // E0.0   [2] (⚨..⚩)    VERTICAL MALE WITH STROKE SIGN..HORIZONTAL MALE WITH STROKE SIGN
                                    // E0.6   [2] (⚪..⚫)    white circle..black circle
                                    // E0.0   [4] (⚬..⚯)    MEDIUM SMALL WHITE CIRCLE..UNMARRIED PARTNERSHIP SYMBOL
                                    // E1.0   [2] (⚰️..⚱️)    coffin..funeral urn
                                    // E0.0  [11] (⚲..⚼)    NEUTER..SESQUIQUADRATE
                                    // E0.6   [2] (⚽..⚾)    soccer ball..baseball
                                    // E0.0   [5] (⚿..⛃)    SQUARED KEY..BLACK DRAUGHTS KING
                                    // E0.6   [2] (⛄..⛅)    snowman without snow..sun behind cloud
                                    // E0.0   [2] (⛆..⛇)    RAIN..BLACK SNOWMAN
                                    // E0.7   [1] (⛈️)       cloud with lightning and rain
                                    // E0.0   [5] (⛉..⛍)    TURNED WHITE SHOGI PIECE..DISABLED CAR
                                    // E0.6   [1] (⛎)       Ophiuchus
                                    // E0.7   [1] (⛏️)       pick
                                    // E0.0   [1] (⛐)       CAR SLIDING
                                    // E0.7   [1] (⛑️)       rescue worker’s helmet
                                    // E0.0   [1] (⛒)       CIRCLED CROSSING LANES
                                    // E0.7   [1] (⛓️)       chains
                                    // E0.6   [1] (⛔)       no entry
                                    // E0.0  [20] (⛕..⛨)    ALTERNATE ONE-WAY LEFT WAY TRAFFIC..BLACK CROSS ON SHIELD
                                    // E0.7   [1] (⛩️)       shinto shrine
                                    // E0.6   [1] (⛪)       church
                                    // E0.0   [5] (⛫..⛯)    CASTLE..MAP SYMBOL FOR LIGHTHOUSE
                                    // E0.7   [2] (⛰️..⛱️)    mountain..umbrella on ground
                                    // E0.6   [2] (⛲..⛳)    fountain..flag in hole
                                    // E0.7   [1] (⛴️)       ferry
                                    // E0.6   [1] (⛵)       sailboat
                                    // E0.0   [1] (⛶)       SQUARE FOUR CORNERS
                                    // E0.7   [3] (⛷️..⛹️)    skier..person bouncing ball
                                    // E0.6   [1] (⛺)       tent
                                    // E0.0   [2] (⛻..⛼)    JAPANESE BANK SYMBOL..HEADSTONE GRAVEYARD SYMBOL
                                    // E0.6   [1] (⛽)       fuel pump
                                    // E0.0   [4] (⛾..✁)    CUP ON BLACK SQUARE..UPPER BLADE SCISSORS
                                    // E0.6   [1] (✂️)       scissors
                                    // E0.0   [2] (✃..✄)    LOWER BLADE SCISSORS..WHITE SCISSORS
                                    // E0.6   [1] (✅)       check mark button
                                    if (0x2690 <= code && code <= 0x2705) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                                else {
                                    // E0.6   [5] (✈️..✌️)    airplane..victory hand
                                    // E0.7   [1] (✍️)       writing hand
                                    // E0.0   [1] (✎)       LOWER RIGHT PENCIL
                                    // E0.6   [1] (✏️)       pencil
                                    // E0.0   [2] (✐..✑)    UPPER RIGHT PENCIL..WHITE NIB
                                    // E0.6   [1] (✒️)       black nib
                                    if (0x2708 <= code && code <= 0x2712) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0x271d) {
                            // E0.6   [1] (✔️)       check mark
                            if (0x2714 === code) {
                                return boundaries_1.EXTENDED_PICTOGRAPHIC;
                            }
                            // E0.6   [1] (✖️)       multiply
                            if (0x2716 === code) {
                                return boundaries_1.EXTENDED_PICTOGRAPHIC;
                            }
                        }
                        else {
                            if (code < 0x2721) {
                                // E0.7   [1] (✝️)       latin cross
                                if (0x271d === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                // E0.7   [1] (✡️)       star of David
                                if (0x2721 === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                                // E0.6   [1] (✨)       sparkles
                                if (0x2728 === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                        }
                    }
                }
                else {
                    if (code < 0x2753) {
                        if (code < 0x2747) {
                            if (code < 0x2744) {
                                // E0.6   [2] (✳️..✴️)    eight-spoked asterisk..eight-pointed star
                                if (0x2733 <= code && code <= 0x2734) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                // E0.6   [1] (❄️)       snowflake
                                if (0x2744 === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                        }
                        else {
                            if (code < 0x274c) {
                                // E0.6   [1] (❇️)       sparkle
                                if (0x2747 === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                // E0.6   [1] (❌)       cross mark
                                if (0x274c === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                                // E0.6   [1] (❎)       cross mark button
                                if (0x274e === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0x2763) {
                            if (code < 0x2757) {
                                // E0.6   [3] (❓..❕)    red question mark..white exclamation mark
                                if (0x2753 <= code && code <= 0x2755) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                // E0.6   [1] (❗)       red exclamation mark
                                if (0x2757 === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                        }
                        else {
                            if (code < 0x2795) {
                                // E1.0   [1] (❣️)       heart exclamation
                                // E0.6   [1] (❤️)       red heart
                                // E0.0   [3] (❥..❧)    ROTATED HEAVY BLACK HEART BULLET..ROTATED FLORAL HEART BULLET
                                if (0x2763 <= code && code <= 0x2767) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                if (code < 0x27a1) {
                                    // E0.6   [3] (➕..➗)    plus..divide
                                    if (0x2795 <= code && code <= 0x2797) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                                else {
                                    // E0.6   [1] (➡️)       right arrow
                                    if (0x27a1 === code) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        else {
            if (code < 0x1f201) {
                if (code < 0x3297) {
                    if (code < 0x2b1b) {
                        if (code < 0x2934) {
                            // E0.6   [1] (➰)       curly loop
                            if (0x27b0 === code) {
                                return boundaries_1.EXTENDED_PICTOGRAPHIC;
                            }
                            // E1.0   [1] (➿)       double curly loop
                            if (0x27bf === code) {
                                return boundaries_1.EXTENDED_PICTOGRAPHIC;
                            }
                        }
                        else {
                            if (code < 0x2b05) {
                                // E0.6   [2] (⤴️..⤵️)    right arrow curving up..right arrow curving down
                                if (0x2934 <= code && code <= 0x2935) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                // E0.6   [3] (⬅️..⬇️)    left arrow..down arrow
                                if (0x2b05 <= code && code <= 0x2b07) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0x2b55) {
                            if (code < 0x2b50) {
                                // E0.6   [2] (⬛..⬜)    black large square..white large square
                                if (0x2b1b <= code && code <= 0x2b1c) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                // E0.6   [1] (⭐)       star
                                if (0x2b50 === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                        }
                        else {
                            if (code < 0x3030) {
                                // E0.6   [1] (⭕)       hollow red circle
                                if (0x2b55 === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                // E0.6   [1] (〰️)       wavy dash
                                if (0x3030 === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                                // E0.6   [1] (〽️)       part alternation mark
                                if (0x303d === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                        }
                    }
                }
                else {
                    if (code < 0x1f16c) {
                        if (code < 0x1f000) {
                            // E0.6   [1] (㊗️)       Japanese “congratulations” button
                            if (0x3297 === code) {
                                return boundaries_1.EXTENDED_PICTOGRAPHIC;
                            }
                            // E0.6   [1] (㊙️)       Japanese “secret” button
                            if (0x3299 === code) {
                                return boundaries_1.EXTENDED_PICTOGRAPHIC;
                            }
                        }
                        else {
                            if (code < 0x1f10d) {
                                // E0.0   [4] (🀀..🀃)    MAHJONG TILE EAST WIND..MAHJONG TILE NORTH WIND
                                // E0.6   [1] (🀄)       mahjong red dragon
                                // E0.0 [202] (🀅..🃎)    MAHJONG TILE GREEN DRAGON..PLAYING CARD KING OF DIAMONDS
                                // E0.6   [1] (🃏)       joker
                                // E0.0  [48] (🃐..🃿)    <reserved-1F0D0>..<reserved-1F0FF>
                                if (0x1f000 <= code && code <= 0x1f0ff) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                if (code < 0x1f12f) {
                                    // E0.0   [3] (🄍..🄏)    CIRCLED ZERO WITH SLASH..CIRCLED DOLLAR SIGN WITH OVERLAID BACKSLASH
                                    if (0x1f10d <= code && code <= 0x1f10f) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                                else {
                                    // E0.0   [1] (🄯)       COPYLEFT SYMBOL
                                    if (0x1f12f === code) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0x1f18e) {
                            if (code < 0x1f17e) {
                                // E0.0   [4] (🅬..🅯)    RAISED MR SIGN..CIRCLED HUMAN FIGURE
                                // E0.6   [2] (🅰️..🅱️)    A button (blood type)..B button (blood type)
                                if (0x1f16c <= code && code <= 0x1f171) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                // E0.6   [2] (🅾️..🅿️)    O button (blood type)..P button
                                if (0x1f17e <= code && code <= 0x1f17f) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                        }
                        else {
                            if (code < 0x1f191) {
                                // E0.6   [1] (🆎)       AB button (blood type)
                                if (0x1f18e === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                if (code < 0x1f1ad) {
                                    // E0.6  [10] (🆑..🆚)    CL button..VS button
                                    if (0x1f191 <= code && code <= 0x1f19a) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                                else {
                                    // E0.0  [57] (🆭..🇥)    MASK WORK SYMBOL..<reserved-1F1E5>
                                    if (0x1f1ad <= code && code <= 0x1f1e5) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                            }
                        }
                    }
                }
            }
            else {
                if (code < 0x1f7d5) {
                    if (code < 0x1f249) {
                        if (code < 0x1f22f) {
                            if (code < 0x1f21a) {
                                // E0.6   [2] (🈁..🈂️)    Japanese “here” button..Japanese “service charge” button
                                // E0.0  [13] (🈃..🈏)    <reserved-1F203>..<reserved-1F20F>
                                if (0x1f201 <= code && code <= 0x1f20f) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                // E0.6   [1] (🈚)       Japanese “free of charge” button
                                if (0x1f21a === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                        }
                        else {
                            if (code < 0x1f232) {
                                // E0.6   [1] (🈯)       Japanese “reserved” button
                                if (0x1f22f === code) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                if (code < 0x1f23c) {
                                    // E0.6   [9] (🈲..🈺)    Japanese “prohibited” button..Japanese “open for business” button
                                    if (0x1f232 <= code && code <= 0x1f23a) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                                else {
                                    // E0.0   [4] (🈼..🈿)    <reserved-1F23C>..<reserved-1F23F>
                                    if (0x1f23c <= code && code <= 0x1f23f) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0x1f546) {
                            if (code < 0x1f400) {
                                // E0.0   [7] (🉉..🉏)    <reserved-1F249>..<reserved-1F24F>
                                // E0.6   [2] (🉐..🉑)    Japanese “bargain” button..Japanese “acceptable” button
                                // E0.0 [174] (🉒..🋿)    <reserved-1F252>..<reserved-1F2FF>
                                // E0.6  [13] (🌀..🌌)    cyclone..milky way
                                // E0.7   [2] (🌍..🌎)    globe showing Europe-Africa..globe showing Americas
                                // E0.6   [1] (🌏)       globe showing Asia-Australia
                                // E1.0   [1] (🌐)       globe with meridians
                                // E0.6   [1] (🌑)       new moon
                                // E1.0   [1] (🌒)       waxing crescent moon
                                // E0.6   [3] (🌓..🌕)    first quarter moon..full moon
                                // E1.0   [3] (🌖..🌘)    waning gibbous moon..waning crescent moon
                                // E0.6   [1] (🌙)       crescent moon
                                // E1.0   [1] (🌚)       new moon face
                                // E0.6   [1] (🌛)       first quarter moon face
                                // E0.7   [1] (🌜)       last quarter moon face
                                // E1.0   [2] (🌝..🌞)    full moon face..sun with face
                                // E0.6   [2] (🌟..🌠)    glowing star..shooting star
                                // E0.7   [1] (🌡️)       thermometer
                                // E0.0   [2] (🌢..🌣)    BLACK DROPLET..WHITE SUN
                                // E0.7   [9] (🌤️..🌬️)    sun behind small cloud..wind face
                                // E1.0   [3] (🌭..🌯)    hot dog..burrito
                                // E0.6   [2] (🌰..🌱)    chestnut..seedling
                                // E1.0   [2] (🌲..🌳)    evergreen tree..deciduous tree
                                // E0.6   [2] (🌴..🌵)    palm tree..cactus
                                // E0.7   [1] (🌶️)       hot pepper
                                // E0.6  [20] (🌷..🍊)    tulip..tangerine
                                // E1.0   [1] (🍋)       lemon
                                // E0.6   [4] (🍌..🍏)    banana..green apple
                                // E1.0   [1] (🍐)       pear
                                // E0.6  [43] (🍑..🍻)    peach..clinking beer mugs
                                // E1.0   [1] (🍼)       baby bottle
                                // E0.7   [1] (🍽️)       fork and knife with plate
                                // E1.0   [2] (🍾..🍿)    bottle with popping cork..popcorn
                                // E0.6  [20] (🎀..🎓)    ribbon..graduation cap
                                // E0.0   [2] (🎔..🎕)    HEART WITH TIP ON THE LEFT..BOUQUET OF FLOWERS
                                // E0.7   [2] (🎖️..🎗️)    military medal..reminder ribbon
                                // E0.0   [1] (🎘)       MUSICAL KEYBOARD WITH JACKS
                                // E0.7   [3] (🎙️..🎛️)    studio microphone..control knobs
                                // E0.0   [2] (🎜..🎝)    BEAMED ASCENDING MUSICAL NOTES..BEAMED DESCENDING MUSICAL NOTES
                                // E0.7   [2] (🎞️..🎟️)    film frames..admission tickets
                                // E0.6  [37] (🎠..🏄)    carousel horse..person surfing
                                // E1.0   [1] (🏅)       sports medal
                                // E0.6   [1] (🏆)       trophy
                                // E1.0   [1] (🏇)       horse racing
                                // E0.6   [1] (🏈)       american football
                                // E1.0   [1] (🏉)       rugby football
                                // E0.6   [1] (🏊)       person swimming
                                // E0.7   [4] (🏋️..🏎️)    person lifting weights..racing car
                                // E1.0   [5] (🏏..🏓)    cricket game..ping pong
                                // E0.7  [12] (🏔️..🏟️)    snow-capped mountain..stadium
                                // E0.6   [4] (🏠..🏣)    house..Japanese post office
                                // E1.0   [1] (🏤)       post office
                                // E0.6  [12] (🏥..🏰)    hospital..castle
                                // E0.0   [2] (🏱..🏲)    WHITE PENNANT..BLACK PENNANT
                                // E0.7   [1] (🏳️)       white flag
                                // E1.0   [1] (🏴)       black flag
                                // E0.7   [1] (🏵️)       rosette
                                // E0.0   [1] (🏶)       BLACK ROSETTE
                                // E0.7   [1] (🏷️)       label
                                // E1.0   [3] (🏸..🏺)    badminton..amphora
                                if (0x1f249 <= code && code <= 0x1f3fa) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                // E1.0   [8] (🐀..🐇)    rat..rabbit
                                // E0.7   [1] (🐈)       cat
                                // E1.0   [3] (🐉..🐋)    dragon..whale
                                // E0.6   [3] (🐌..🐎)    snail..horse
                                // E1.0   [2] (🐏..🐐)    ram..goat
                                // E0.6   [2] (🐑..🐒)    ewe..monkey
                                // E1.0   [1] (🐓)       rooster
                                // E0.6   [1] (🐔)       chicken
                                // E0.7   [1] (🐕)       dog
                                // E1.0   [1] (🐖)       pig
                                // E0.6  [19] (🐗..🐩)    boar..poodle
                                // E1.0   [1] (🐪)       camel
                                // E0.6  [20] (🐫..🐾)    two-hump camel..paw prints
                                // E0.7   [1] (🐿️)       chipmunk
                                // E0.6   [1] (👀)       eyes
                                // E0.7   [1] (👁️)       eye
                                // E0.6  [35] (👂..👤)    ear..bust in silhouette
                                // E1.0   [1] (👥)       busts in silhouette
                                // E0.6   [6] (👦..👫)    boy..woman and man holding hands
                                // E1.0   [2] (👬..👭)    men holding hands..women holding hands
                                // E0.6  [63] (👮..💬)    police officer..speech balloon
                                // E1.0   [1] (💭)       thought balloon
                                // E0.6   [8] (💮..💵)    white flower..dollar banknote
                                // E1.0   [2] (💶..💷)    euro banknote..pound banknote
                                // E0.6  [52] (💸..📫)    money with wings..closed mailbox with raised flag
                                // E0.7   [2] (📬..📭)    open mailbox with raised flag..open mailbox with lowered flag
                                // E0.6   [1] (📮)       postbox
                                // E1.0   [1] (📯)       postal horn
                                // E0.6   [5] (📰..📴)    newspaper..mobile phone off
                                // E1.0   [1] (📵)       no mobile phones
                                // E0.6   [2] (📶..📷)    antenna bars..camera
                                // E1.0   [1] (📸)       camera with flash
                                // E0.6   [4] (📹..📼)    video camera..videocassette
                                // E0.7   [1] (📽️)       film projector
                                // E0.0   [1] (📾)       PORTABLE STEREO
                                // E1.0   [4] (📿..🔂)    prayer beads..repeat single button
                                // E0.6   [1] (🔃)       clockwise vertical arrows
                                // E1.0   [4] (🔄..🔇)    counterclockwise arrows button..muted speaker
                                // E0.7   [1] (🔈)       speaker low volume
                                // E1.0   [1] (🔉)       speaker medium volume
                                // E0.6  [11] (🔊..🔔)    speaker high volume..bell
                                // E1.0   [1] (🔕)       bell with slash
                                // E0.6  [22] (🔖..🔫)    bookmark..water pistol
                                // E1.0   [2] (🔬..🔭)    microscope..telescope
                                // E0.6  [16] (🔮..🔽)    crystal ball..downwards button
                                if (0x1f400 <= code && code <= 0x1f53d) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                        }
                        else {
                            if (code < 0x1f680) {
                                // E0.0   [3] (🕆..🕈)    WHITE LATIN CROSS..CELTIC CROSS
                                // E0.7   [2] (🕉️..🕊️)    om..dove
                                // E1.0   [4] (🕋..🕎)    kaaba..menorah
                                // E0.0   [1] (🕏)       BOWL OF HYGIEIA
                                // E0.6  [12] (🕐..🕛)    one o’clock..twelve o’clock
                                // E0.7  [12] (🕜..🕧)    one-thirty..twelve-thirty
                                // E0.0   [7] (🕨..🕮)    RIGHT SPEAKER..BOOK
                                // E0.7   [2] (🕯️..🕰️)    candle..mantelpiece clock
                                // E0.0   [2] (🕱..🕲)    BLACK SKULL AND CROSSBONES..NO PIRACY
                                // E0.7   [7] (🕳️..🕹️)    hole..joystick
                                // E3.0   [1] (🕺)       man dancing
                                // E0.0  [12] (🕻..🖆)    LEFT HAND TELEPHONE RECEIVER..PEN OVER STAMPED ENVELOPE
                                // E0.7   [1] (🖇️)       linked paperclips
                                // E0.0   [2] (🖈..🖉)    BLACK PUSHPIN..LOWER LEFT PENCIL
                                // E0.7   [4] (🖊️..🖍️)    pen..crayon
                                // E0.0   [2] (🖎..🖏)    LEFT WRITING HAND..TURNED OK HAND SIGN
                                // E0.7   [1] (🖐️)       hand with fingers splayed
                                // E0.0   [4] (🖑..🖔)    REVERSED RAISED HAND WITH FINGERS SPLAYED..REVERSED VICTORY HAND
                                // E1.0   [2] (🖕..🖖)    middle finger..vulcan salute
                                // E0.0  [13] (🖗..🖣)    WHITE DOWN POINTING LEFT HAND INDEX..BLACK DOWN POINTING BACKHAND INDEX
                                // E3.0   [1] (🖤)       black heart
                                // E0.7   [1] (🖥️)       desktop computer
                                // E0.0   [2] (🖦..🖧)    KEYBOARD AND MOUSE..THREE NETWORKED COMPUTERS
                                // E0.7   [1] (🖨️)       printer
                                // E0.0   [8] (🖩..🖰)    POCKET CALCULATOR..TWO BUTTON MOUSE
                                // E0.7   [2] (🖱️..🖲️)    computer mouse..trackball
                                // E0.0   [9] (🖳..🖻)    OLD PERSONAL COMPUTER..DOCUMENT WITH PICTURE
                                // E0.7   [1] (🖼️)       framed picture
                                // E0.0   [5] (🖽..🗁)    FRAME WITH TILES..OPEN FOLDER
                                // E0.7   [3] (🗂️..🗄️)    card index dividers..file cabinet
                                // E0.0  [12] (🗅..🗐)    EMPTY NOTE..PAGES
                                // E0.7   [3] (🗑️..🗓️)    wastebasket..spiral calendar
                                // E0.0   [8] (🗔..🗛)    DESKTOP WINDOW..DECREASE FONT SIZE SYMBOL
                                // E0.7   [3] (🗜️..🗞️)    clamp..rolled-up newspaper
                                // E0.0   [2] (🗟..🗠)    PAGE WITH CIRCLED TEXT..STOCK CHART
                                // E0.7   [1] (🗡️)       dagger
                                // E0.0   [1] (🗢)       LIPS
                                // E0.7   [1] (🗣️)       speaking head
                                // E0.0   [4] (🗤..🗧)    THREE RAYS ABOVE..THREE RAYS RIGHT
                                // E2.0   [1] (🗨️)       left speech bubble
                                // E0.0   [6] (🗩..🗮)    RIGHT SPEECH BUBBLE..LEFT ANGER BUBBLE
                                // E0.7   [1] (🗯️)       right anger bubble
                                // E0.0   [3] (🗰..🗲)    MOOD BUBBLE..LIGHTNING MOOD
                                // E0.7   [1] (🗳️)       ballot box with ballot
                                // E0.0   [6] (🗴..🗹)    BALLOT SCRIPT X..BALLOT BOX WITH BOLD CHECK
                                // E0.7   [1] (🗺️)       world map
                                // E0.6   [5] (🗻..🗿)    mount fuji..moai
                                // E1.0   [1] (😀)       grinning face
                                // E0.6   [6] (😁..😆)    beaming face with smiling eyes..grinning squinting face
                                // E1.0   [2] (😇..😈)    smiling face with halo..smiling face with horns
                                // E0.6   [5] (😉..😍)    winking face..smiling face with heart-eyes
                                // E1.0   [1] (😎)       smiling face with sunglasses
                                // E0.6   [1] (😏)       smirking face
                                // E0.7   [1] (😐)       neutral face
                                // E1.0   [1] (😑)       expressionless face
                                // E0.6   [3] (😒..😔)    unamused face..pensive face
                                // E1.0   [1] (😕)       confused face
                                // E0.6   [1] (😖)       confounded face
                                // E1.0   [1] (😗)       kissing face
                                // E0.6   [1] (😘)       face blowing a kiss
                                // E1.0   [1] (😙)       kissing face with smiling eyes
                                // E0.6   [1] (😚)       kissing face with closed eyes
                                // E1.0   [1] (😛)       face with tongue
                                // E0.6   [3] (😜..😞)    winking face with tongue..disappointed face
                                // E1.0   [1] (😟)       worried face
                                // E0.6   [6] (😠..😥)    angry face..sad but relieved face
                                // E1.0   [2] (😦..😧)    frowning face with open mouth..anguished face
                                // E0.6   [4] (😨..😫)    fearful face..tired face
                                // E1.0   [1] (😬)       grimacing face
                                // E0.6   [1] (😭)       loudly crying face
                                // E1.0   [2] (😮..😯)    face with open mouth..hushed face
                                // E0.6   [4] (😰..😳)    anxious face with sweat..flushed face
                                // E1.0   [1] (😴)       sleeping face
                                // E0.6   [1] (😵)       face with crossed-out eyes
                                // E1.0   [1] (😶)       face without mouth
                                // E0.6  [10] (😷..🙀)    face with medical mask..weary cat
                                // E1.0   [4] (🙁..🙄)    slightly frowning face..face with rolling eyes
                                // E0.6  [11] (🙅..🙏)    person gesturing NO..folded hands
                                if (0x1f546 <= code && code <= 0x1f64f) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                if (code < 0x1f774) {
                                    // E0.6   [1] (🚀)       rocket
                                    // E1.0   [2] (🚁..🚂)    helicopter..locomotive
                                    // E0.6   [3] (🚃..🚅)    railway car..bullet train
                                    // E1.0   [1] (🚆)       train
                                    // E0.6   [1] (🚇)       metro
                                    // E1.0   [1] (🚈)       light rail
                                    // E0.6   [1] (🚉)       station
                                    // E1.0   [2] (🚊..🚋)    tram..tram car
                                    // E0.6   [1] (🚌)       bus
                                    // E0.7   [1] (🚍)       oncoming bus
                                    // E1.0   [1] (🚎)       trolleybus
                                    // E0.6   [1] (🚏)       bus stop
                                    // E1.0   [1] (🚐)       minibus
                                    // E0.6   [3] (🚑..🚓)    ambulance..police car
                                    // E0.7   [1] (🚔)       oncoming police car
                                    // E0.6   [1] (🚕)       taxi
                                    // E1.0   [1] (🚖)       oncoming taxi
                                    // E0.6   [1] (🚗)       automobile
                                    // E0.7   [1] (🚘)       oncoming automobile
                                    // E0.6   [2] (🚙..🚚)    sport utility vehicle..delivery truck
                                    // E1.0   [7] (🚛..🚡)    articulated lorry..aerial tramway
                                    // E0.6   [1] (🚢)       ship
                                    // E1.0   [1] (🚣)       person rowing boat
                                    // E0.6   [2] (🚤..🚥)    speedboat..horizontal traffic light
                                    // E1.0   [1] (🚦)       vertical traffic light
                                    // E0.6   [7] (🚧..🚭)    construction..no smoking
                                    // E1.0   [4] (🚮..🚱)    litter in bin sign..non-potable water
                                    // E0.6   [1] (🚲)       bicycle
                                    // E1.0   [3] (🚳..🚵)    no bicycles..person mountain biking
                                    // E0.6   [1] (🚶)       person walking
                                    // E1.0   [2] (🚷..🚸)    no pedestrians..children crossing
                                    // E0.6   [6] (🚹..🚾)    men’s room..water closet
                                    // E1.0   [1] (🚿)       shower
                                    // E0.6   [1] (🛀)       person taking bath
                                    // E1.0   [5] (🛁..🛅)    bathtub..left luggage
                                    // E0.0   [5] (🛆..🛊)    TRIANGLE WITH ROUNDED CORNERS..GIRLS SYMBOL
                                    // E0.7   [1] (🛋️)       couch and lamp
                                    // E1.0   [1] (🛌)       person in bed
                                    // E0.7   [3] (🛍️..🛏️)    shopping bags..bed
                                    // E1.0   [1] (🛐)       place of worship
                                    // E3.0   [2] (🛑..🛒)    stop sign..shopping cart
                                    // E0.0   [2] (🛓..🛔)    STUPA..PAGODA
                                    // E12.0  [1] (🛕)       hindu temple
                                    // E13.0  [2] (🛖..🛗)    hut..elevator
                                    // E0.0   [4] (🛘..🛛)    <reserved-1F6D8>..<reserved-1F6DB>
                                    // E15.0  [1] (🛜)       wireless
                                    // E14.0  [3] (🛝..🛟)    playground slide..ring buoy
                                    // E0.7   [6] (🛠️..🛥️)    hammer and wrench..motor boat
                                    // E0.0   [3] (🛦..🛨)    UP-POINTING MILITARY AIRPLANE..UP-POINTING SMALL AIRPLANE
                                    // E0.7   [1] (🛩️)       small airplane
                                    // E0.0   [1] (🛪)       NORTHEAST-POINTING AIRPLANE
                                    // E1.0   [2] (🛫..🛬)    airplane departure..airplane arrival
                                    // E0.0   [3] (🛭..🛯)    <reserved-1F6ED>..<reserved-1F6EF>
                                    // E0.7   [1] (🛰️)       satellite
                                    // E0.0   [2] (🛱..🛲)    ONCOMING FIRE ENGINE..DIESEL LOCOMOTIVE
                                    // E0.7   [1] (🛳️)       passenger ship
                                    // E3.0   [3] (🛴..🛶)    kick scooter..canoe
                                    // E5.0   [2] (🛷..🛸)    sled..flying saucer
                                    // E11.0  [1] (🛹)       skateboard
                                    // E12.0  [1] (🛺)       auto rickshaw
                                    // E13.0  [2] (🛻..🛼)    pickup truck..roller skate
                                    // E0.0   [3] (🛽..🛿)    <reserved-1F6FD>..<reserved-1F6FF>
                                    if (0x1f680 <= code && code <= 0x1f6ff) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                                else {
                                    // E0.0  [12] (🝴..🝿)    LOT OF FORTUNE..ORCUS
                                    if (0x1f774 <= code && code <= 0x1f77f) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                            }
                        }
                    }
                }
                else {
                    if (code < 0x1f8ae) {
                        if (code < 0x1f848) {
                            if (code < 0x1f80c) {
                                // E0.0  [11] (🟕..🟟)    CIRCLED TRIANGLE..<reserved-1F7DF>
                                // E12.0 [12] (🟠..🟫)    orange circle..brown square
                                // E0.0   [4] (🟬..🟯)    <reserved-1F7EC>..<reserved-1F7EF>
                                // E14.0  [1] (🟰)       heavy equals sign
                                // E0.0  [15] (🟱..🟿)    <reserved-1F7F1>..<reserved-1F7FF>
                                if (0x1f7d5 <= code && code <= 0x1f7ff) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                // E0.0   [4] (🠌..🠏)    <reserved-1F80C>..<reserved-1F80F>
                                if (0x1f80c <= code && code <= 0x1f80f) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                        }
                        else {
                            if (code < 0x1f85a) {
                                // E0.0   [8] (🡈..🡏)    <reserved-1F848>..<reserved-1F84F>
                                if (0x1f848 <= code && code <= 0x1f84f) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                if (code < 0x1f888) {
                                    // E0.0   [6] (🡚..🡟)    <reserved-1F85A>..<reserved-1F85F>
                                    if (0x1f85a <= code && code <= 0x1f85f) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                                else {
                                    // E0.0   [8] (🢈..🢏)    <reserved-1F888>..<reserved-1F88F>
                                    if (0x1f888 <= code && code <= 0x1f88f) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                            }
                        }
                    }
                    else {
                        if (code < 0x1f93c) {
                            if (code < 0x1f90c) {
                                // E0.0  [82] (🢮..🣿)    <reserved-1F8AE>..<reserved-1F8FF>
                                if (0x1f8ae <= code && code <= 0x1f8ff) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                // E13.0  [1] (🤌)       pinched fingers
                                // E12.0  [3] (🤍..🤏)    white heart..pinching hand
                                // E1.0   [9] (🤐..🤘)    zipper-mouth face..sign of the horns
                                // E3.0   [6] (🤙..🤞)    call me hand..crossed fingers
                                // E5.0   [1] (🤟)       love-you gesture
                                // E3.0   [8] (🤠..🤧)    cowboy hat face..sneezing face
                                // E5.0   [8] (🤨..🤯)    face with raised eyebrow..exploding head
                                // E3.0   [1] (🤰)       pregnant woman
                                // E5.0   [2] (🤱..🤲)    breast-feeding..palms up together
                                // E3.0   [8] (🤳..🤺)    selfie..person fencing
                                if (0x1f90c <= code && code <= 0x1f93a) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                        }
                        else {
                            if (code < 0x1f947) {
                                // E3.0   [3] (🤼..🤾)    people wrestling..person playing handball
                                // E12.0  [1] (🤿)       diving mask
                                // E3.0   [6] (🥀..🥅)    wilted flower..goal net
                                if (0x1f93c <= code && code <= 0x1f945) {
                                    return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                }
                            }
                            else {
                                if (code < 0x1fc00) {
                                    // E3.0   [5] (🥇..🥋)    1st place medal..martial arts uniform
                                    // E5.0   [1] (🥌)       curling stone
                                    // E11.0  [3] (🥍..🥏)    lacrosse..flying disc
                                    // E3.0  [15] (🥐..🥞)    croissant..pancakes
                                    // E5.0  [13] (🥟..🥫)    dumpling..canned food
                                    // E11.0  [5] (🥬..🥰)    leafy green..smiling face with hearts
                                    // E12.0  [1] (🥱)       yawning face
                                    // E13.0  [1] (🥲)       smiling face with tear
                                    // E11.0  [4] (🥳..🥶)    partying face..cold face
                                    // E13.0  [2] (🥷..🥸)    ninja..disguised face
                                    // E14.0  [1] (🥹)       face holding back tears
                                    // E11.0  [1] (🥺)       pleading face
                                    // E12.0  [1] (🥻)       sari
                                    // E11.0  [4] (🥼..🥿)    lab coat..flat shoe
                                    // E1.0   [5] (🦀..🦄)    crab..unicorn
                                    // E3.0  [13] (🦅..🦑)    eagle..squid
                                    // E5.0   [6] (🦒..🦗)    giraffe..cricket
                                    // E11.0 [11] (🦘..🦢)    kangaroo..swan
                                    // E13.0  [2] (🦣..🦤)    mammoth..dodo
                                    // E12.0  [6] (🦥..🦪)    sloth..oyster
                                    // E13.0  [3] (🦫..🦭)    beaver..seal
                                    // E12.0  [2] (🦮..🦯)    guide dog..white cane
                                    // E11.0 [10] (🦰..🦹)    red hair..supervillain
                                    // E12.0  [6] (🦺..🦿)    safety vest..mechanical leg
                                    // E1.0   [1] (🧀)       cheese wedge
                                    // E11.0  [2] (🧁..🧂)    cupcake..salt
                                    // E12.0  [8] (🧃..🧊)    beverage box..ice
                                    // E13.0  [1] (🧋)       bubble tea
                                    // E14.0  [1] (🧌)       troll
                                    // E12.0  [3] (🧍..🧏)    person standing..deaf person
                                    // E5.0  [23] (🧐..🧦)    face with monocle..socks
                                    // E11.0 [25] (🧧..🧿)    red envelope..nazar amulet
                                    // E0.0 [112] (🨀..🩯)    NEUTRAL CHESS KING..<reserved-1FA6F>
                                    // E12.0  [4] (🩰..🩳)    ballet shoes..shorts
                                    // E13.0  [1] (🩴)       thong sandal
                                    // E15.0  [3] (🩵..🩷)    light blue heart..pink heart
                                    // E12.0  [3] (🩸..🩺)    drop of blood..stethoscope
                                    // E14.0  [2] (🩻..🩼)    x-ray..crutch
                                    // E0.0   [3] (🩽..🩿)    <reserved-1FA7D>..<reserved-1FA7F>
                                    // E12.0  [3] (🪀..🪂)    yo-yo..parachute
                                    // E13.0  [4] (🪃..🪆)    boomerang..nesting dolls
                                    // E15.0  [2] (🪇..🪈)    maracas..flute
                                    // E0.0   [7] (🪉..🪏)    <reserved-1FA89>..<reserved-1FA8F>
                                    // E12.0  [6] (🪐..🪕)    ringed planet..banjo
                                    // E13.0 [19] (🪖..🪨)    military helmet..rock
                                    // E14.0  [4] (🪩..🪬)    mirror ball..hamsa
                                    // E15.0  [3] (🪭..🪯)    folding hand fan..khanda
                                    // E13.0  [7] (🪰..🪶)    fly..feather
                                    // E14.0  [4] (🪷..🪺)    lotus..nest with eggs
                                    // E15.0  [3] (🪻..🪽)    hyacinth..wing
                                    // E0.0   [1] (🪾)       <reserved-1FABE>
                                    // E15.0  [1] (🪿)       goose
                                    // E13.0  [3] (🫀..🫂)    anatomical heart..people hugging
                                    // E14.0  [3] (🫃..🫅)    pregnant man..person with crown
                                    // E0.0   [8] (🫆..🫍)    <reserved-1FAC6>..<reserved-1FACD>
                                    // E15.0  [2] (🫎..🫏)    moose..donkey
                                    // E13.0  [7] (🫐..🫖)    blueberries..teapot
                                    // E14.0  [3] (🫗..🫙)    pouring liquid..jar
                                    // E15.0  [2] (🫚..🫛)    ginger root..pea pod
                                    // E0.0   [4] (🫜..🫟)    <reserved-1FADC>..<reserved-1FADF>
                                    // E14.0  [8] (🫠..🫧)    melting face..bubbles
                                    // E15.0  [1] (🫨)       shaking face
                                    // E0.0   [7] (🫩..🫯)    <reserved-1FAE9>..<reserved-1FAEF>
                                    // E14.0  [7] (🫰..🫶)    hand with index finger and thumb crossed..heart hands
                                    // E15.0  [2] (🫷..🫸)    leftwards pushing hand..rightwards pushing hand
                                    // E0.0   [7] (🫹..🫿)    <reserved-1FAF9>..<reserved-1FAFF>
                                    if (0x1f947 <= code && code <= 0x1faff) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                                else {
                                    // E0.0[1022] (🰀..🿽)    <reserved-1FC00>..<reserved-1FFFD>
                                    if (0x1fc00 <= code && code <= 0x1fffd) {
                                        return boundaries_1.EXTENDED_PICTOGRAPHIC;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        // unlisted code points are treated as a break property of "Other"
        return boundaries_1.CLUSTER_BREAK.OTHER;
    }
}
exports.default = Graphemer;