diff options
Diffstat (limited to 'ext')
| -rw-r--r-- | ext/css/display.css | 3 | ||||
| -rw-r--r-- | ext/data/templates/anki-field-templates-upgrade-v38.handlebars | 43 | ||||
| -rw-r--r-- | ext/data/templates/default-anki-field-templates.handlebars | 2 | ||||
| -rw-r--r-- | ext/js/data/options-util.js | 9 | ||||
| -rw-r--r-- | ext/js/display/display-generator.js | 8 | ||||
| -rw-r--r-- | ext/js/display/display.js | 30 | ||||
| -rw-r--r-- | ext/js/language/de/german-transforms.js | 14 | ||||
| -rw-r--r-- | ext/js/language/en/english-transforms.js | 36 | ||||
| -rw-r--r-- | ext/js/language/es/spanish-transforms.js | 10 | ||||
| -rw-r--r-- | ext/js/language/ja/japanese-transforms.js | 98 | ||||
| -rw-r--r-- | ext/js/language/ko/korean-transforms.js | 922 | ||||
| -rw-r--r-- | ext/js/language/la/latin-transforms.js | 12 | ||||
| -rw-r--r-- | ext/js/language/language-transformer.js | 30 | ||||
| -rw-r--r-- | ext/js/language/multi-language-transformer.js | 13 | ||||
| -rw-r--r-- | ext/js/language/sga/old-irish-transforms.js | 36 | ||||
| -rw-r--r-- | ext/js/language/sq/albanian-transforms.js | 66 | ||||
| -rw-r--r-- | ext/js/language/translator.js | 131 | 
17 files changed, 804 insertions, 659 deletions
| diff --git a/ext/css/display.css b/ext/css/display.css index d5b4d82d..ae1b5f8a 100644 --- a/ext/css/display.css +++ b/ext/css/display.css @@ -855,6 +855,9 @@ button.action-button:active {  .inflection-source-icon[data-inflection-source='both']::after {      content: '๐งฉ๐';  } +.inflection[title] { +    cursor: pointer; +}  /* Headwords */ diff --git a/ext/data/templates/anki-field-templates-upgrade-v38.handlebars b/ext/data/templates/anki-field-templates-upgrade-v38.handlebars new file mode 100644 index 00000000..83b6e3ac --- /dev/null +++ b/ext/data/templates/anki-field-templates-upgrade-v38.handlebars @@ -0,0 +1,43 @@ +{{<<<<<<<}} +{{#*inline "conjugation"}} +    {{~#if (op ">" definition.inflectionRuleChainCandidates.length 0)~}} +        {{~set "multiple" false~}} +        {{~#if (op ">" definition.inflectionRuleChainCandidates.length 1)~}} +            {{~set "multiple" true~}} +        {{~/if~}} +        {{~#if (get "multiple")~}}<ul>{{/if~}} +            {{~#each definition.inflectionRuleChainCandidates~}} +                {{~#if (op ">" inflectionRules.length 0)~}} +                    {{~#if (get "multiple")~}}<li>{{/if~}} +                    {{~#each inflectionRules~}} +                        {{~#if (op ">" @index 0)}} ยซ {{/if~}} +                        {{.}} +                    {{~/each~}} +                    {{~#if (get "multiple")~}}</li>{{/if~}} +                {{~/if~}} +            {{~/each~}} +        {{~#if (get "multiple")~}}</ul>{{/if~}} +    {{~/if~}} +{{/inline}} +{{=======}} +{{#*inline "conjugation"}} +    {{~#if (op ">" definition.inflectionRuleChainCandidates.length 0)~}} +        {{~set "multiple" false~}} +        {{~#if (op ">" definition.inflectionRuleChainCandidates.length 1)~}} +            {{~set "multiple" true~}} +        {{~/if~}} +        {{~#if (get "multiple")~}}<ul>{{/if~}} +            {{~#each definition.inflectionRuleChainCandidates~}} +                {{~#if (op ">" inflectionRules.length 0)~}} +                    {{~#if (get "multiple")~}}<li>{{/if~}} +                    {{~#each inflectionRules~}} +                        {{~#if (op ">" @index 0)}} ยซ {{/if~}} +                        {{name}} +                    {{~/each~}} +                    {{~#if (get "multiple")~}}</li>{{/if~}} +                {{~/if~}} +            {{~/each~}} +        {{~#if (get "multiple")~}}</ul>{{/if~}} +    {{~/if~}} +{{/inline}} +{{>>>>>>>}}
\ No newline at end of file diff --git a/ext/data/templates/default-anki-field-templates.handlebars b/ext/data/templates/default-anki-field-templates.handlebars index 7b4f3802..44741866 100644 --- a/ext/data/templates/default-anki-field-templates.handlebars +++ b/ext/data/templates/default-anki-field-templates.handlebars @@ -324,7 +324,7 @@                      {{~#if (get "multiple")~}}<li>{{/if~}}                      {{~#each inflectionRules~}}                          {{~#if (op ">" @index 0)}} ยซ {{/if~}} -                        {{.}} +                        {{name}}                      {{~/each~}}                      {{~#if (get "multiple")~}}</li>{{/if~}}                  {{~/if~}} diff --git a/ext/js/data/options-util.js b/ext/js/data/options-util.js index 074beb4e..5ef30adb 100644 --- a/ext/js/data/options-util.js +++ b/ext/js/data/options-util.js @@ -545,6 +545,7 @@ export class OptionsUtil {              this._updateVersion35,              this._updateVersion36,              this._updateVersion37, +            this._updateVersion38,          ];          /* eslint-enable @typescript-eslint/unbound-method */          if (typeof targetVersion === 'number' && targetVersion < result.length) { @@ -1305,6 +1306,14 @@ export class OptionsUtil {      }      /** +     *  - Updated `conjugation` handlebars for new inflection chain format. +     *  @type {import('options-util').UpdateFunction} +     */ +    async _updateVersion38(options) { +        await this._applyAnkiFieldTemplatesPatch(options, '/data/templates/anki-field-templates-upgrade-v38.handlebars'); +    } + +    /**       * @param {string} url       * @returns {Promise<chrome.tabs.Tab>}       */ diff --git a/ext/js/display/display-generator.js b/ext/js/display/display-generator.js index 6236f749..be87761b 100644 --- a/ext/js/display/display-generator.js +++ b/ext/js/display/display-generator.js @@ -401,14 +401,16 @@ export class DisplayGenerator {      }      /** -     * @param {string} inflection +     * @param {import('dictionary').InflectionRule} inflection       * @returns {DocumentFragment}       */      _createTermInflection(inflection) { +        const {name, description} = inflection;          const fragment = this._templates.instantiateFragment('inflection');          const node = this._querySelector(fragment, '.inflection'); -        this._setTextContent(node, inflection); -        node.dataset.reason = inflection; +        this._setTextContent(node, name); +        if (description) { node.title = description; } +        node.dataset.reason = name;          return fragment;      } diff --git a/ext/js/display/display.js b/ext/js/display/display.js index dc6b4713..82d84979 100644 --- a/ext/js/display/display.js +++ b/ext/js/display/display.js @@ -162,6 +162,8 @@ export class Display extends EventDispatcher {          this._contentTextScanner = null;          /** @type {?import('./display-notification.js').DisplayNotification} */          this._tagNotification = null; +        /** @type {?import('./display-notification.js').DisplayNotification} */ +        this._inflectionNotification = null;          /** @type {HTMLElement} */          this._footerNotificationContainer = querySelectorNotNull(document, '#content-footer');          /** @type {OptionToggleHotkeyHandler} */ @@ -181,6 +183,8 @@ export class Display extends EventDispatcher {          /** @type {(event: MouseEvent) => void} */          this._onTagClickBind = this._onTagClick.bind(this);          /** @type {(event: MouseEvent) => void} */ +        this._onInflectionClickBind = this._onInflectionClick.bind(this); +        /** @type {(event: MouseEvent) => void} */          this._onMenuButtonClickBind = this._onMenuButtonClick.bind(this);          /** @type {(event: import('popup-menu').MenuCloseEvent) => void} */          this._onMenuButtonMenuCloseBind = this._onMenuButtonMenuClose.bind(this); @@ -1026,6 +1030,14 @@ export class Display extends EventDispatcher {      /**       * @param {MouseEvent} e       */ +    _onInflectionClick(e) { +        const node = /** @type {HTMLElement} */ (e.currentTarget); +        this._showInflectionNotification(node); +    } + +    /** +     * @param {MouseEvent} e +     */      _onMenuButtonClick(e) {          const node = /** @type {HTMLElement} */ (e.currentTarget); @@ -1086,6 +1098,21 @@ export class Display extends EventDispatcher {      }      /** +     * @param {HTMLSpanElement} inflectionNode +     */ +    _showInflectionNotification(inflectionNode) { +        const description = inflectionNode.title; +        if (!description || !(inflectionNode instanceof HTMLSpanElement)) { return; } + +        if (this._inflectionNotification === null) { +            this._inflectionNotification = this.createNotification(true); +        } + +        this._inflectionNotification.setContent(description); +        this._inflectionNotification.open(); +    } + +    /**       * @param {boolean} animate       */      _hideTagNotification(animate) { @@ -1797,6 +1824,9 @@ export class Display extends EventDispatcher {          for (const node of entry.querySelectorAll('.headword-kanji-link')) {              eventListeners.addEventListener(node, 'click', this._onKanjiLookupBind);          } +        for (const node of entry.querySelectorAll('.inflection[data-reason]')) { +            eventListeners.addEventListener(node, 'click', this._onInflectionClickBind); +        }          for (const node of entry.querySelectorAll('.tag-label')) {              eventListeners.addEventListener(node, 'click', this._onTagClickBind);          } diff --git a/ext/js/language/de/german-transforms.js b/ext/js/language/de/german-transforms.js index 27b13c6a..17ba7a44 100644 --- a/ext/js/language/de/german-transforms.js +++ b/ext/js/language/de/german-transforms.js @@ -64,8 +64,8 @@ export const germanTransforms = {              isDictionaryForm: true,          },      }, -    transforms: [ -        { +    transforms: { +        'nominalization': {              name: 'nominalization',              description: 'Noun formed from a verb',              rules: [ @@ -73,7 +73,7 @@ export const germanTransforms = {                  suffixInflection('lung', 'eln', [], []),              ],          }, -        { +        '-bar': {              name: '-bar',              description: '-able adjective from a verb',              rules: [ @@ -81,26 +81,26 @@ export const germanTransforms = {                  suffixInflection('bar', 'n', [], ['v']), // Lieferbar              ],          }, -        { +        'negative': {              name: 'negative',              description: 'Negation',              rules: [                  prefixInflection('un', '', [], ['adj']),              ],          }, -        { +        'separated prefix': {              name: 'separated prefix',              description: 'Separable prefix',              rules: [                  ...separatedPrefixInflections,              ],          }, -        { +        'zu-infinitive': {              name: 'zu-infinitive',              description: 'zu-infinitive',              rules: [                  ...zuInfinitiveInflections,              ],          }, -    ], +    },  }; diff --git a/ext/js/language/en/english-transforms.js b/ext/js/language/en/english-transforms.js index c8c9c0d9..d9af831b 100644 --- a/ext/js/language/en/english-transforms.js +++ b/ext/js/language/en/english-transforms.js @@ -148,8 +148,8 @@ export const englishTransforms = {              isDictionaryForm: true,          },      }, -    transforms: [ -        { +    transforms: { +        'plural': {              name: 'plural',              description: 'Plural form of a noun',              rules: [ @@ -160,7 +160,7 @@ export const englishTransforms = {                  suffixInflection('ves', 'f', ['np'], ['ns']),              ],          }, -        { +        'possessive': {              name: 'possessive',              description: 'Possessive form of a noun',              rules: [ @@ -168,7 +168,7 @@ export const englishTransforms = {                  suffixInflection('s\'', 's', ['n'], ['n']),              ],          }, -        { +        'past': {              name: 'past',              description: 'Simple past tense of a verb',              rules: [ @@ -176,7 +176,7 @@ export const englishTransforms = {                  ...createPhrasalVerbInflectionsFromSuffixInflections(pastSuffixInflections),              ],          }, -        { +        'ing': {              name: 'ing',              description: 'Present participle of a verb',              rules: [ @@ -184,7 +184,7 @@ export const englishTransforms = {                  ...createPhrasalVerbInflectionsFromSuffixInflections(ingSuffixInflections),              ],          }, -        { +        '3rd pers. sing. pres': {              name: '3rd pers. sing. pres',              description: 'Third person singular present tense of a verb',              rules: [ @@ -192,21 +192,21 @@ export const englishTransforms = {                  ...createPhrasalVerbInflectionsFromSuffixInflections(thirdPersonSgPresentSuffixInflections),              ],          }, -        { +        'interposed object': {              name: 'interposed object',              description: 'Phrasal verb with interposed object',              rules: [                  phrasalVerbInterposedObjectRule,              ],          }, -        { +        'archaic': {              name: 'archaic',              description: 'Archaic form of a word',              rules: [                  suffixInflection('\'d', 'ed', ['v'], ['v']),              ],          }, -        { +        'adverb': {              name: 'adverb',              description: 'Adverb form of an adjective',              rules: [ @@ -215,7 +215,7 @@ export const englishTransforms = {                  suffixInflection('ly', 'le', ['adv'], ['adj']), // 'humbly'              ],          }, -        { +        'comparative': {              name: 'comparative',              description: 'Comparative form of an adjective',              rules: [ @@ -225,7 +225,7 @@ export const englishTransforms = {                  ...doubledConsonantInflection('bdgmnt', 'er', ['adj'], ['adj']),              ],          }, -        { +        'superlative': {              name: 'superlative',              description: 'Superlative form of an adjective',              rules: [ @@ -235,14 +235,14 @@ export const englishTransforms = {                  ...doubledConsonantInflection('bdgmnt', 'est', ['adj'], ['adj']),              ],          }, -        { +        'dropped g': {              name: 'dropped g',              description: 'Dropped g in -ing form of a verb',              rules: [                  suffixInflection('in\'', 'ing', ['v'], ['v']),              ],          }, -        { +        '-y': {              name: '-y',              description: 'Adjective formed from a verb or noun',              rules: [ @@ -251,28 +251,28 @@ export const englishTransforms = {                  ...doubledConsonantInflection('glmnprst', 'y', [], ['n', 'v']), // 'baggy', 'saggy'              ],          }, -        { +        'un-': {              name: 'un-',              description: 'Negative form of an adjective, adverb, or verb',              rules: [                  prefixInflection('un', '', ['adj', 'adv', 'v'], ['adj', 'adv', 'v']),              ],          }, -        { +        'going-to future': {              name: 'going-to future',              description: 'Going-to future tense of a verb',              rules: [                  prefixInflection('going to ', '', ['v'], ['v']),              ],          }, -        { +        'will future': {              name: 'will future',              description: 'Will-future tense of a verb',              rules: [                  prefixInflection('will ', '', ['v'], ['v']),              ],          }, -        { +        'imperative negative': {              name: 'imperative negative',              description: 'Negative imperative form of a verb',              rules: [ @@ -280,5 +280,5 @@ export const englishTransforms = {                  prefixInflection('do not ', '', ['v'], ['v']),              ],          }, -    ], +    },  }; diff --git a/ext/js/language/es/spanish-transforms.js b/ext/js/language/es/spanish-transforms.js index f2b503a6..54022fd5 100644 --- a/ext/js/language/es/spanish-transforms.js +++ b/ext/js/language/es/spanish-transforms.js @@ -73,8 +73,8 @@ export const spanishTransforms = {              isDictionaryForm: true,          },      }, -    transforms: [ -        { +    transforms: { +        'plural': {              name: 'plural',              description: 'Plural form of a noun',              rules: [ @@ -85,14 +85,14 @@ export const spanishTransforms = {                  ...[...'aeiou'].map((v) => suffixInflection(`${v}nes`, `${addAccent(v)}n`, ['np'], ['ns'])), // 'canciones' -> canciรณn              ],          }, -        { +        'feminine adjective': {              name: 'feminine adjective',              description: 'feminine form of an adjective',              rules: [                  suffixInflection('a', 'o', ['adj'], ['adj']),              ],          }, -        { +        'present indicative': {              name: 'present indicative',              description: 'Present indicative form of a verb',              rules: [ @@ -167,5 +167,5 @@ export const spanishTransforms = {                  wholeWordInflection('han', 'haber', ['v'], ['v']),              ],          }, -    ], +    },  }; diff --git a/ext/js/language/ja/japanese-transforms.js b/ext/js/language/ja/japanese-transforms.js index d5c6fa81..c8f9f671 100644 --- a/ext/js/language/ja/japanese-transforms.js +++ b/ext/js/language/ja/japanese-transforms.js @@ -130,8 +130,8 @@ export const japaneseTransforms = {              isDictionaryForm: false,          },      }, -    transforms: [ -        { +    transforms: { +        '-ba': {              name: '-ba',              description: 'Conditional',              i18n: [ @@ -154,7 +154,7 @@ export const japaneseTransforms = {                  suffixInflection('ใใฐ', 'ใ', ['-ba'], ['v1', 'v5', 'vk', 'vs', 'vz']),              ],          }, -        { +        '-ya': {              name: '-ya',              description: 'Conditional (Contraction)',              i18n: [ @@ -178,7 +178,7 @@ export const japaneseTransforms = {                  suffixInflection('ใใ', 'ใใฐ', [], ['-ba']),              ],          }, -        { +        '-cha': {              name: '-cha',              description: 'Contraction of -teha',              i18n: [ @@ -208,7 +208,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใกใ', 'ไพใ', ['v5'], ['vk']),              ],          }, -        { +        '-chau': {              name: '-chau',              rules: [                  suffixInflection('ใกใใ', 'ใ', ['v5'], ['v1']), @@ -230,7 +230,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใกใใ', 'ไพใ', ['v5'], ['vk']),              ],          }, -        { +        '-chimau': {              name: '-chimau',              rules: [                  suffixInflection('ใกใพใ', 'ใ', ['v5'], ['v1']), @@ -252,14 +252,14 @@ export const japaneseTransforms = {                  suffixInflection('ไพใกใพใ', 'ไพใ', ['v5'], ['vk']),              ],          }, -        { +        '-shimau': {              name: '-shimau',              rules: [                  suffixInflection('ใฆใใพใ', 'ใฆ', ['v5'], ['-te']),                  suffixInflection('ใงใใพใ', 'ใง', ['v5'], ['-te']),              ],          }, -        { +        '-nasai': {              name: '-nasai',              rules: [                  suffixInflection('ใชใใ', 'ใ', [], ['v1']), @@ -280,7 +280,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใชใใ', 'ไพใ', [], ['vk']),              ],          }, -        { +        '-sou': {              name: '-sou',              rules: [                  suffixInflection('ใใ', 'ใ', [], ['adj-i']), @@ -302,7 +302,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใใ', 'ไพใ', [], ['vk']),              ],          }, -        { +        '-sugiru': {              name: '-sugiru',              rules: [                  suffixInflection('ใใใ', 'ใ', ['v1'], ['adj-i']), @@ -324,7 +324,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใใใ', 'ไพใ', ['v1'], ['vk']),              ],          }, -        { +        '-tai': {              name: '-tai',              rules: [                  suffixInflection('ใใ', 'ใ', ['adj-i'], ['v1']), @@ -345,7 +345,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใใ', 'ไพใ', ['adj-i'], ['vk']),              ],          }, -        { +        '-tara': {              name: '-tara',              rules: [                  suffixInflection('ใใฃใใ', 'ใ', [], ['adj-i']), @@ -385,7 +385,7 @@ export const japaneseTransforms = {                  suffixInflection('ใฎใใใใใ', 'ใฎใใพใ', [], ['v5']),              ],          }, -        { +        '-tari': {              name: '-tari',              rules: [                  suffixInflection('ใใฃใใ', 'ใ', [], ['adj-i']), @@ -425,7 +425,7 @@ export const japaneseTransforms = {                  suffixInflection('ใฎใใใใใ', 'ใฎใใพใ', [], ['v5']),              ],          }, -        { +        '-te': {              name: '-te',              rules: [                  suffixInflection('ใใฆ', 'ใ', ['-te'], ['adj-i']), @@ -466,7 +466,7 @@ export const japaneseTransforms = {                  suffixInflection('ใพใใฆ', 'ใพใ', [], ['v']),              ],          }, -        { +        '-zu': {              name: '-zu',              rules: [                  suffixInflection('ใ', 'ใ', [], ['v1']), @@ -487,7 +487,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใ', 'ไพใ', [], ['vk']),              ],          }, -        { +        '-nu': {              name: '-nu',              rules: [                  suffixInflection('ใฌ', 'ใ', [], ['v1']), @@ -508,7 +508,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใฌ', 'ไพใ', [], ['vk']),              ],          }, -        { +        '-n': {              name: '-n',              rules: [                  suffixInflection('ใ', 'ใ', [], ['v1']), @@ -529,7 +529,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใ', 'ไพใ', [], ['vk']),              ],          }, -        { +        '-mu': {              name: '-mu',              rules: [                  suffixInflection('ใ', 'ใ', [], ['v1']), @@ -550,7 +550,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใ', 'ไพใ', [], ['vk']),              ],          }, -        { +        '-zaru': {              name: '-zaru',              rules: [                  suffixInflection('ใใ', 'ใ', [], ['v1']), @@ -571,7 +571,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใใ', 'ไพใ', [], ['vk']),              ],          }, -        { +        '-neba': {              name: '-neba',              rules: [                  suffixInflection('ใญใฐ', 'ใ', [], ['v1']), @@ -592,13 +592,13 @@ export const japaneseTransforms = {                  suffixInflection('ไพใญใฐ', 'ไพใ', [], ['vk']),              ],          }, -        { +        'adv': {              name: 'adv',              rules: [                  suffixInflection('ใ', 'ใ', ['adv'], ['adj-i']),              ],          }, -        { +        'causative': {              name: 'causative',              rules: [                  suffixInflection('ใใใ', 'ใ', ['v1'], ['v1']), @@ -622,7 +622,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใใใ', 'ไพใ', ['v1'], ['vk']),              ],          }, -        { +        'imperative': {              name: 'imperative',              rules: [                  suffixInflection('ใ', 'ใ', [], ['v1']), @@ -647,13 +647,13 @@ export const japaneseTransforms = {                  suffixInflection('ไพใ', 'ไพใ', [], ['vk']),              ],          }, -        { +        'imperative negative': {              name: 'imperative negative',              rules: [                  suffixInflection('ใช', '', [], ['v']),              ],          }, -        { +        'masu stem': {              name: 'masu stem',              rules: [                  suffixInflection('ใ', 'ใใ', [], ['v1d']), @@ -693,7 +693,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพ', 'ไพใ', [], ['vk']),              ],          }, -        { +        'negative': {              name: 'negative',              rules: [                  suffixInflection('ใใชใ', 'ใ', ['adj-i'], ['adj-i']), @@ -716,13 +716,13 @@ export const japaneseTransforms = {                  suffixInflection('ใพใใ', 'ใพใ', ['v'], ['v']),              ],          }, -        { +        'noun': {              name: 'noun',              rules: [                  suffixInflection('ใ', 'ใ', [], ['adj-i']),              ],          }, -        { +        'passive': {              name: 'passive',              rules: [                  suffixInflection('ใใใ', 'ใ', ['v1'], ['v5']), @@ -743,7 +743,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใใใ', 'ไพใ', ['v1'], ['vk']),              ],          }, -        { +        'past': {              name: 'past',              rules: [                  suffixInflection('ใใฃใ', 'ใ', ['past'], ['adj-i']), @@ -785,7 +785,7 @@ export const japaneseTransforms = {                  suffixInflection('ใพใใใงใใ', 'ใพใใ', ['past'], ['v']),              ],          }, -        { +        'polite': {              name: 'polite',              rules: [                  suffixInflection('ใพใ', 'ใ', ['v1'], ['v1']), @@ -807,7 +807,7 @@ export const japaneseTransforms = {                  suffixInflection('ใใใใพใ', 'ใ', ['v'], ['adj-i']),              ],          }, -        { +        'potential': {              name: 'potential',              rules: [                  suffixInflection('ใใ', 'ใ', ['v1'], ['v1', 'v5']), @@ -826,7 +826,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใใ', 'ไพใ', ['v1'], ['vk']),              ],          }, -        { +        'potential or passive': {              name: 'potential or passive',              rules: [                  suffixInflection('ใใใ', 'ใ', ['v1'], ['v1']), @@ -839,7 +839,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใใใ', 'ไพใ', ['v1'], ['vk']),              ],          }, -        { +        'volitional': {              name: 'volitional',              rules: [                  suffixInflection('ใใ', 'ใ', [], ['v1']), @@ -861,7 +861,7 @@ export const japaneseTransforms = {                  suffixInflection('ใพใใใ', 'ใพใ', [], ['v']),              ],          }, -        { +        'causative passive': {              name: 'causative passive',              rules: [                  suffixInflection('ใใใใ', 'ใ', ['v1'], ['v5']), @@ -874,7 +874,7 @@ export const japaneseTransforms = {                  suffixInflection('ใใใใ', 'ใ', ['v1'], ['v5']),              ],          }, -        { +        '-toku': {              name: '-toku',              rules: [                  suffixInflection('ใจใ', 'ใ', ['v5'], ['v1']), @@ -895,7 +895,7 @@ export const japaneseTransforms = {                  suffixInflection('ไพใจใ', 'ไพใ', ['v5'], ['vk']),              ],          }, -        { +        'progressive or perfect': {              name: 'progressive or perfect',              rules: [                  suffixInflection('ใฆใใ', 'ใฆ', ['v1'], ['-te']), @@ -908,26 +908,26 @@ export const japaneseTransforms = {                  suffixInflection('ใชใใงใใ', 'ใชใ', ['v1'], ['adj-i']),              ],          }, -        { +        '-ki': {              name: '-ki',              rules: [                  suffixInflection('ใ', 'ใ', [], ['adj-i']),              ],          }, -        { +        '-ge': {              name: '-ge',              rules: [                  suffixInflection('ใ', 'ใ', [], ['adj-i']),                  suffixInflection('ๆฐ', 'ใ', [], ['adj-i']),              ],          }, -        { +        '-garu': {              name: '-garu',              rules: [                  suffixInflection('ใใ', 'ใ', ['v5'], ['adj-i']),              ],          }, -        { +        '-e': {              name: '-e',              rules: [                  suffixInflection('ใญใ', 'ใชใ', [], ['adj-i']), @@ -974,7 +974,7 @@ export const japaneseTransforms = {                  suffixInflection('ใฆใ', 'ใใ', [], ['adj-i']),              ],          }, -        { +        'slang': {              name: 'slang',              rules: [                  suffixInflection('ใฆใใฆใ', 'ใจใใจใ', [], ['adj-i']), @@ -989,7 +989,7 @@ export const japaneseTransforms = {                  suffixInflection('ใใใใ', 'ใใใใฟ', [], []),              ],          }, -        { +        'kansai-ben negative': {              name: 'kansai-ben',              description: 'Negative form of kansai-ben verbs',              rules: [ @@ -1001,7 +1001,7 @@ export const japaneseTransforms = {                  suffixInflection('ใใฆใธใ', 'ใฃใฆใชใ', [], ['adj-i']),              ],          }, -        { +        'kansai-ben -te': {              name: 'kansai-ben',              description: '-te form of kansai-ben verbs',              rules: [ @@ -1022,7 +1022,7 @@ export const japaneseTransforms = {                  suffixInflection('ใใใฆ', 'ใใฃใฆ', ['-te'], ['-te']),              ],          }, -        { +        'kansai-ben past': {              name: 'kansai-ben',              description: 'past form of kansai-ben terms',              rules: [ @@ -1043,7 +1043,7 @@ export const japaneseTransforms = {                  suffixInflection('ใใใ', 'ใใฃใ', ['past'], ['past']),              ],          }, -        { +        'kansai-ben -tara': {              name: 'kansai-ben',              description: '-tara form of kansai-ben terms',              rules: [ @@ -1064,7 +1064,7 @@ export const japaneseTransforms = {                  suffixInflection('ใใใใ', 'ใใฃใใ', [], []),              ],          }, -        { +        'kansai-ben -ku': {              name: 'kansai-ben',              description: '-ku stem of kansai-ben adjectives',              rules: [ @@ -1081,7 +1081,7 @@ export const japaneseTransforms = {                  suffixInflection('ใใ
ใ', 'ใใ', [], ['adv']),              ],          }, -        { +        'kansai-ben adjective -te': {              name: 'kansai-ben',              description: '-te form of kansai-ben adjectives',              rules: [ @@ -1098,7 +1098,7 @@ export const japaneseTransforms = {                  suffixInflection('ใใ
ใใฆ', 'ใใใฆ', ['-te'], ['-te']),              ],          }, -        { +        'kansai-ben adjective negative': {              name: 'kansai-ben',              description: 'Negative form of kansai-ben adjectives',              rules: [ @@ -1115,5 +1115,5 @@ export const japaneseTransforms = {                  suffixInflection('ใใ
ใใชใ', 'ใใใชใ', ['adj-i'], ['adj-i']),              ],          }, -    ], +    },  }; diff --git a/ext/js/language/ko/korean-transforms.js b/ext/js/language/ko/korean-transforms.js index bad3dc4b..4cee4e3f 100644 --- a/ext/js/language/ko/korean-transforms.js +++ b/ext/js/language/ko/korean-transforms.js @@ -100,8 +100,8 @@ export const koreanTransforms = {              isDictionaryForm: false,          },      }, -    transforms: [ -        { +    transforms: { +        '์ด๊ฐ': {              name: '์ด๊ฐ',              description: 'Stem',              rules: [ @@ -140,202 +140,202 @@ export const koreanTransforms = {                  suffixInflection('ใ
ก', 'ใ
กใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-๊ฑฐ๋': {              name: '-๊ฑฐ๋',              rules: [                  suffixInflection('ใฑใ
ใดใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใดใ
', '', [], ['p', 'f', 'euob', 'eusi']),              ],          }, -        { +        '-๊ฑฐ๋': {              name: '-๊ฑฐ๋',              rules: [                  suffixInflection('ใฑใ
ใดใ
กใน', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใดใ
กใน', '', [], ['p', 'f', 'euob', 'eusi']),              ],          }, -        { +        '-๊ฑฐ๋': {              name: '-๊ฑฐ๋',              rules: [                  suffixInflection('ใฑใ
ใดใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใดใ
ฃ', '', [], ['p', 'f', 'euob', 'eusi']),              ],          }, -        { +        '-๊ฑฐ๋์': {              name: '-๊ฑฐ๋์',              rules: [                  suffixInflection('ใฑใ
ใดใ
ฃใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใดใ
ฃใ
ใ
ใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ฑฐ๋': {              name: '-๊ฑฐ๋',              rules: [                  suffixInflection('ใฑใ
ใทใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใทใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ฑฐ๋๋ฉด': {              name: '-๊ฑฐ๋๋ฉด',              rules: [                  suffixInflection('ใฑใ
ใทใ
กใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใทใ
กใ
ใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ฑฐ๋ ': {              name: '-๊ฑฐ๋ ',              rules: [                  suffixInflection('ใฑใ
ใทใ
กใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใทใ
กใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ฑฐ๋ค๋': {              name: '-๊ฑฐ๋ค๋',              rules: [                  suffixInflection('ใฑใ
ใทใ
กในในใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใทใ
กในในใ
ใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ฑฐ๋ผ': {              name: '-๊ฑฐ๋ผ',              rules: [                  suffixInflection('ใฑใ
ในใ
', 'ใทใ
', [], ['v']),              ],          }, -        { +        '-๊ฑด': {              name: '-๊ฑด',              rules: [                  suffixInflection('ใฑใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใด', '', [], ['p', 'f', 'euob', 'eusi']),              ],          }, -        { +        '-๊ฑด๋': {              name: '-๊ฑด๋',              rules: [                  suffixInflection('ใฑใ
ใดใทใ
', 'ใทใ
', [], ['v']),                  suffixInflection('ใฑใ
ใดใทใ
', '', [], ['p', 'eusi', 'jaob']),              ],          }, -        { +        '-๊ฑด๋ง๋': {              name: '-๊ฑด๋ง๋',              rules: [                  suffixInflection('ใฑใ
ใดใ
ใ
ใดใ
กใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใดใ
ใ
ใดใ
กใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ฑด๋ง': {              name: '-๊ฑด๋ง',              rules: [                  suffixInflection('ใฑใ
ใดใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใดใ
ใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ฑธ๋': {              name: '-๊ฑธ๋',              rules: [                  suffixInflection('ใฑใ
ในในใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ในในใ
ใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ฒ๋ค': {              name: '-๊ฒ๋ค',              rules: [                  suffixInflection('ใฑใ
ใ
ใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใ
ใทใ
', '', [], ['p', 'eusi']),              ],          }, -        { +        '-๊ฒ๋ง๋': {              name: '-๊ฒ๋ง๋',              rules: [                  suffixInflection('ใฑใ
ใ
ใ
ใ
ใดใ
กใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใ
ใ
ใ
ใดใ
กใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ฒ': {              name: '-๊ฒ',              rules: [                  suffixInflection('ใฑใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
', '', [], ['p', 'eusi']),              ],          }, -        { +        '-๊ฒ๋': {              name: '-๊ฒ๋',              rules: [                  suffixInflection('ใฑใ
ใฒใ
กใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใฑใ
ใฒใ
กใ
', '', [], ['eusi']),              ],          }, -        { +        '-๊ฒ๋': {              name: '-๊ฒ๋',              rules: [                  suffixInflection('ใฑใ
ใดใ
', 'ใทใ
', [], ['v']),                  suffixInflection('ใฑใ
ใดใ
', '', [], ['eusi']),              ],          }, -        { +        '-๊ฒ์๋ฆฌ': {              name: '-๊ฒ์๋ฆฌ',              rules: [                  suffixInflection('ใฑใ
ใ
ใ
ฃในใ
ฃ', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใฑใ
ใ
ใ
ฃในใ
ฃ', '', [], ['eusi']),              ],          }, -        { +        '-๊ฒ ': {              name: '-๊ฒ ',              rules: [                  suffixInflection('ใฑใ
ใ
', 'ใทใ
', ['f'], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใ
', '', ['f'], ['p', 'eusi']),              ],          }, -        { +        '-๊ณ ': {              name: '-๊ณ ',              rules: [                  suffixInflection('ใฑใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
', '', [], ['p', 'f', 'eusi', 'saob', 'euob', 'euo', 'sab', 'jaob', 'jab']),              ],          }, -        { +        '-๊ณ ๋ ํ๋ค': {              name: '-๊ณ ๋ ํ๋ค',              rules: [                  suffixInflection('ใฑใ
ใดใ
กใด ใ
ใ
ใทใ
', 'ใทใ
', ['v'], ['v']),                  suffixInflection('ใฑใ
ใดใ
กใด ใ
ใ
ใทใ
', '', ['v'], ['eusi']),              ],          }, -        { +        '-๊ณค ํ๋ค': {              name: '-๊ณค ํ๋ค',              rules: [                  suffixInflection('ใฑใ
ใด ใ
ใ
ใทใ
', 'ใทใ
', ['v'], ['v']),                  suffixInflection('ใฑใ
ใด ใ
ใ
ใทใ
', '', ['v'], ['eusi']),              ],          }, -        { +        '-๊ณ ๋': {              name: '-๊ณ ๋',              rules: [                  suffixInflection('ใฑใ
ใดใ
กใด', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใฑใ
ใดใ
กใด', '', [], ['eusi']),              ],          }, -        { +        '-๊ณค': {              name: '-๊ณค',              rules: [                  suffixInflection('ใฑใ
ใด', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใฑใ
ใด', '', [], ['eusi']),              ],          }, -        { +        '-๊ณ ๋': {              name: '-๊ณ ๋',              rules: [                  suffixInflection('ใฑใ
ใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใทใ
', '', [], ['eusi']),              ],          }, -        { +        '-๊ณ ๋ง๊ณ ': {              name: '-๊ณ ๋ง๊ณ ',              rules: [                  suffixInflection('ใฑใ
ใ
ใ
ในใฑใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใ
ใ
ในใฑใ
', '', [], ['p', 'eusi']),              ],          }, -        { +        '-๊ณ ์': {              name: '-๊ณ ์',              rules: [                  suffixInflection('ใฑใ
ใ
ใ
', 'ใทใ
', [], ['v']), @@ -343,14 +343,14 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใดใ
ฃใฑใ
ใ
ใ
', 'ใ
ใ
ใดใ
ฃใทใ
', [], ['adj']),              ],          }, -        { +        '-๊ณ ์ผ': {              name: '-๊ณ ์ผ',              rules: [                  suffixInflection('ใฑใ
ใ
ใ
', 'ใทใ
', [], ['v']),                  suffixInflection('ใฑใ
ใ
ใ
', '', [], ['eusi']),              ],          }, -        { +        '-๊ณ ์': {              name: '-๊ณ ์',              rules: [                  suffixInflection('ใฑใ
ใ
ใ
', 'ใทใ
', [], ['v']), @@ -359,7 +359,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใฑใ
ใ
ใ
', '์๋ค', [], []),              ],          }, -        { +        '-๊ณ ์ ': {              name: '-๊ณ ์ ',              rules: [                  suffixInflection('ใฑใ
ใ
ใ
', 'ใทใ
', [], ['v']), @@ -368,117 +368,117 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใฑใ
ใ
ใ
', '์๋ค', [], []),              ],          }, -        { +        '-๊ด๋ฐ': {              name: '-๊ด๋ฐ',              rules: [                  suffixInflection('ใฑใ
ใ
ใดใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใ
ใดใทใ
', '', [], ['p', 'eusi']),              ],          }, -        { +        '-๊ตฌ๋': {              name: '-๊ตฌ๋',              rules: [                  suffixInflection('ใฑใ
ใดใ
', 'ใทใ
', [], ['adj', 'ida']),                  suffixInflection('ใฑใ
ใดใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ตฌ๋ ค': {              name: '-๊ตฌ๋ ค',              rules: [                  suffixInflection('ใฑใ
ในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ในใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ตฌ๋ฃ': {              name: '-๊ตฌ๋ฃ',              rules: [                  suffixInflection('ใฑใ
ในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ในใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ตฌ๋ง': {              name: '-๊ตฌ๋ง',              rules: [                  suffixInflection('ใฑใ
ใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใ
ใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ตฌ๋จผ': {              name: '-๊ตฌ๋จผ',              rules: [                  suffixInflection('ใฑใ
ใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใ
ใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ตฌ๋ฉด': {              name: '-๊ตฌ๋ฉด',              rules: [                  suffixInflection('ใฑใ
ใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใ
ใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ตฐ': {              name: '-๊ตฐ',              rules: [                  suffixInflection('ใฑใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ธฐ': {              name: '-๊ธฐ',              rules: [                  suffixInflection('ใฑใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ฃ', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ธฐ๋ก': {              name: '-๊ธฐ๋ก',              rules: [                  suffixInflection('ใฑใ
ฃในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),              ],          }, -        { +        '-๊ธฐ๋ก๋': {              name: '-๊ธฐ๋ก๋',              rules: [                  suffixInflection('ใฑใ
ฃในใ
ใดใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']),              ],          }, -        { +        '-๊ธฐ๋ก์': {              name: '-๊ธฐ๋ก์',              rules: [                  suffixInflection('ใฑใ
ฃในใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ฃในใ
ใ
ใ
', '', [], ['p']),              ],          }, -        { +        '-๊ธฐ๋ก์๋': {              name: '-๊ธฐ๋ก์๋',              rules: [                  suffixInflection('ใฑใ
ฃในใ
ใ
ใ
ใดใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ฃในใ
ใ
ใ
ใดใ
ฃ', '', [], ['p']),              ],          }, -        { +        '-๊ธฐ๋ก์ ๋ค': {              name: '-๊ธฐ๋ก์ ๋ค',              rules: [                  suffixInflection('ใฑใ
ฃในใ
ใ
ใ
ใดใทใ
กใน', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ฃในใ
ใ
ใ
ใดใทใ
กใน', '', [], ['p']),              ],          }, -        { +        '-๊ธฐ์': {              name: '-๊ธฐ์',              rules: [                  suffixInflection('ใฑใ
ฃใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ฃใ
ใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๊ธธ๋': {              name: '-๊ธธ๋',              rules: [                  suffixInflection('ใฑใ
ฃในในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใฑใ
ฃในในใ
', '', [], ['p', 'eusi']),              ],          }, -        { +        '-(์ผ)ใน': {              name: '-(์ผ)ใน',              rules: [                  suffixInflection('ใน', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -492,7 +492,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใน', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๊ฑฐ': {              name: '-(์ผ)ใน๊ฑฐ๋',              rules: [                  suffixInflection('ในใฑใ
ใดใ
', 'ใทใ
', [], ['v', 'adj']), @@ -506,7 +506,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใฑใ
ใดใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)ใน๊ฑธ': {              name: '-(์ผ)ใน๊ฑธ',              rules: [                  suffixInflection('ในใฑใ
ใน', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -520,7 +520,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใฑใ
ใน', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๊ฒ': {              name: '-(์ผ)ใน๊ฒ',              rules: [                  suffixInflection('ในใฑใ
', 'ใทใ
', [], ['v']), @@ -531,7 +531,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กในใฑใ
', 'ใทใทใ
', [], ['v']),              ],          }, -        { +        '-(์ผ)ใน ๊ฑฐ์ผ': {              name: '-(์ผ)ใน ๊ฑฐ์ผ',              rules: [                  suffixInflection('ใน ใฑใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj']), @@ -543,7 +543,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใน ใฑใ
ใ
ใ
', 'ใทใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-(์ผ)ใน ๊ฑฐ์์': {              name: '-(์ผ)ใน ๊ฑฐ์์',              rules: [                  suffixInflection('ใน ใฑใ
ใ
ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj']), @@ -555,7 +555,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใน ใฑใ
ใ
ใ
ใ
ใ
', 'ใทใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-(์ผ)ใน ๊ฒ์ด๋ค': {              name: '-(์ผ)ใน ๊ฒ์ด๋ค',              rules: [                  suffixInflection('ใน ใฑใ
ใ
ใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']), @@ -567,7 +567,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใน ใฑใ
ใ
ใ
ใ
ฃใทใ
', 'ใทใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-(์ผ)ใน ๊ฒ์
๋๋ค': {              name: '-(์ผ)ใน ๊ฒ์
๋๋ค',              rules: [                  suffixInflection('ใน ใฑใ
ใ
ใ
ใ
ฃใ
ใดใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']), @@ -579,7 +579,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใน ใฑใ
ใ
ใ
ใ
ฃใ
ใดใ
ฃใทใ
', 'ใทใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-(์ผ)ใน ๊ฑฐ๋ค': {              name: '-(์ผ)ใน ๊ฑฐ๋ค',              rules: [                  suffixInflection('ใน ใฑใ
ใทใ
', 'ใทใ
', [], ['v', 'adj']), @@ -591,7 +591,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใน ใฑใ
ใทใ
', 'ใทใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-(์ผ)ใน ๊ฒ๋๋ค': {              name: '-(์ผ)ใน ๊ฒ๋๋ค',              rules: [                  suffixInflection('ใน ใฑใ
ใ
ใดใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']), @@ -603,7 +603,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใน ใฑใ
ใ
ใดใ
ฃใทใ
', 'ใทใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-(์ผ)ใน๊ป': {              name: '-(์ผ)ใน๊ป',              rules: [                  suffixInflection('ในใฒใ
', 'ใทใ
', [], ['v', 'adj']), @@ -615,7 +615,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กในใฒใ
', 'ใทใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-(์ผ)๋': {              name: '-(์ผ)๋',              rules: [                  suffixInflection('ใดใ
', 'ใทใ
', [], ['v', 'adj']), @@ -629,14 +629,14 @@ export const koreanTransforms = {                  suffixInflection('ใดใ
', '', [], ['p', 'f', 'eusi', 'sao']),              ],          }, -        { +        '-๋๋': {              name: '-๋๋',              rules: [                  suffixInflection('ใดใ
ใดใ
ฃ', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
ใดใ
ฃ', '', [], ['p', 'f', 'eusi', 'sab', 'euob']),              ],          }, -        { +        '-(์ผ)๋๋ง': {              name: '-(์ผ)๋๋ง',              rules: [                  suffixInflection('ใดใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -650,28 +650,28 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใดใ
ใ
ใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-๋์ด๊น': {              name: '-๋์ด๊น',              rules: [                  suffixInflection('ใดใ
ใ
ใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใดใ
ใ
ใ
ฃใฒใ
', '', [], ['p', 'f', 'eusi', 'saob', 'euob']),              ],          }, -        { +        '-๋์ด๋ค': {              name: '-๋์ด๋ค',              rules: [                  suffixInflection('ใดใ
ใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใดใ
ใ
ใ
ฃใทใ
', '', [], ['p', 'f', 'eusi', 'saob', 'jaob', 'jab', 'euob']),              ],          }, -        { +        '-๋จ': {              name: '-๋จ',              rules: [                  suffixInflection('ใดใ
ใ
', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
ใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-(์ผ)๋': {              name: '-(์ผ)๋',              rules: [                  suffixInflection('ใดใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -685,7 +685,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใดใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-(์ผ)๋๊ณ ': {              name: '-(์ผ)๋๊ณ ',              rules: [                  suffixInflection('ใดใ
ใฑใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -699,13 +699,13 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใดใ
ใฑใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋ผ': {              name: '-๋๋ผ',              rules: [                  suffixInflection('ใดใ
ในใ
', 'ใทใ
', [], ['v']),              ],          }, -        { +        '-๋ค': {              name: '-๋ค',              rules: [                  suffixInflection('ใดใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -713,39 +713,39 @@ export const koreanTransforms = {                  suffixInflection('ใดใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋
ธ๋': {              name: '-๋
ธ๋',              rules: [                  suffixInflection('ใดใ
ใดใ
ฃ', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
ใดใ
ฃ', '', [], ['p', 'f', 'eusi', 'sab', 'euob']),              ],          }, -        { +        '-๋
ธ๋ผ': {              name: '-๋
ธ๋ผ',              rules: [                  suffixInflection('ใดใ
ในใ
', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
ในใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-๋
ธ๋ผ๊ณ ': {              name: '-๋
ธ๋ผ๊ณ ',              rules: [                  suffixInflection('ใดใ
ในใ
ใฑใ
', 'ใทใ
', [], ['v']),              ],          }, -        { +        '-๋
ธ๋ผ๋': {              name: '-๋
ธ๋ผ๋',              rules: [                  suffixInflection('ใดใ
ในใ
ใดใ
ฃ', 'ใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-๋
ธ๋ผ๋๊น': {              name: '-๋
ธ๋ผ๋๊น',              rules: [                  suffixInflection('ใดใ
ในใ
ใดใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-๋
ธ๋ผ๋ฉด': {              name: '-๋
ธ๋ผ๋ฉด',              rules: [                  suffixInflection('ใดใ
ในใ
ใ
ใ
ใด', 'ใทใ
', [], ['v']), @@ -754,7 +754,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
ในใ
ใ
ใ
ใด', '์๋ค', [], []),              ],          }, -        { +        '-(์ผ)๋จ': {              name: '-(์ผ)๋จ',              rules: [                  suffixInflection('ใดใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -767,83 +767,83 @@ export const koreanTransforms = {                  suffixInflection('ใดใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋': {              name: '-๋',              rules: [                  suffixInflection('ใดใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใดใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-๋๋': {              name: '-๋๋',              rules: [                  suffixInflection('ใดใ
ใดใ
', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
ใดใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋๋ง': {              name: '-๋๋ง',              rules: [                  suffixInflection('ใดใ
ใ
ใ
ใด', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
ใ
ใ
ใด', '', [], ['eusi']),              ],          }, -        { +        '-๋๋จผ': {              name: '-๋๋จผ',              rules: [                  suffixInflection('ใดใ
ใ
ใ
ใด', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
ใ
ใ
ใด', '', [], ['eusi']),              ],          }, -        { +        '-๋๋': {              name: '-๋๋',              rules: [                  suffixInflection('ใดใ
กใดใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใดใ
กใดใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋๊ณ ': {              name: '-๋๋๊ณ ',              rules: [                  suffixInflection('ใดใ
กใดใ
ใฑใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใดใ
กใดใ
ใฑใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋จ': {              name: '-๋๋จ',              rules: [                  suffixInflection('ใดใ
กใดใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใดใ
กใดใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋': {              name: '-๋๋',              rules: [                  suffixInflection('ใดใ
กใดใ
ฃ', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใดใ
กใดใ
ฃ', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋๋ง': {              name: '-๋๋๋ง',              rules: [                  suffixInflection('ใดใ
กใดใ
ฃใ
ใ
ใด ใ
ใ
ใ
ใ
ใ
ใทใ
', 'ใทใ
', ['v'], ['v', 'adj']),              ],          }, -        { +        '-๋๋ผ': {              name: '-๋๋ผ',              rules: [                  suffixInflection('ใดใ
กในใ
', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
กในใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋๋ผ๊ณ ': {              name: '-๋๋ผ๊ณ ',              rules: [                  suffixInflection('ใดใ
กในใ
ใฑใ
', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
กในใ
ใฑใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋': {              name: '-๋',              rules: [                  suffixInflection('ใดใ
กใด', 'ใทใ
', [], ['v', 'ida']), @@ -852,7 +852,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
กใด', '์๋ค', [], ['adj']),              ],          }, -        { +        '-(์ผ)ใด': {              name: '-(์ผ)ใด',              rules: [                  suffixInflection('ใด', 'ใทใ
', [], ['v', 'adj']), @@ -861,7 +861,7 @@ export const koreanTransforms = {                  suffixInflection('ใด', '', [], ['eusi', 'f']),              ],          }, -        { +        '-(์ผ/๋)ใด๊ฐ': {              name: '-(์ผ/๋)ใด๊ฐ',              rules: [                  suffixInflection('ใดใฑใ
', 'ใทใ
', [], ['adj', 'ida']), @@ -874,7 +874,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
กใดใฑใ
', '์๋ค', [], []),              ],          }, -        { +        '-(์ผ/๋)ใด๊ฐ': {              name: '-(์ผ/๋)ใด๊ฐ',              rules: [                  suffixInflection('ใดใฑใ
ใ
', 'ใทใ
', [], ['adj', 'ida']), @@ -887,7 +887,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
กใดใฑใ
ใ
', '์๋ค', [], []),              ],          }, -        { +        '-(์ผ/๋)ใด๊ฑธ': {              name: '-(์ผ/๋)ใด๊ฑธ',              rules: [                  suffixInflection('ใดใฑใ
ใน', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -900,7 +900,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
กใดใฑใ
ใน', '์๋ค', [], []),              ],          }, -        { +        '-(์ผ/๋)ใด๊ณ ': {              name: '-(์ผ/๋)ใด๊ณ ',              rules: [                  suffixInflection('ใดใฑใ
', 'ใทใ
', [], ['adj', 'ida']), @@ -913,56 +913,56 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
กใดใฑใ
', '์๋ค', [], []),              ],          }, -        { +        '-๋๊ตฌ๋': {              name: '-๋๊ตฌ๋',              rules: [                  suffixInflection('ใดใ
กใดใฑใ
ใดใ
', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
กใดใฑใ
ใดใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋๊ตฌ๋ ค': {              name: '-๋๊ตฌ๋ ค',              rules: [                  suffixInflection('ใดใ
กใดใฑใ
ในใ
', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
กใดใฑใ
ในใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋๊ตฌ๋ฃ': {              name: '-๋๊ตฌ๋ฃ',              rules: [                  suffixInflection('ใดใ
กใดใฑใ
ในใ
', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
กใดใฑใ
ในใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋๊ตฌ๋ง': {              name: '-๋๊ตฌ๋ง',              rules: [                  suffixInflection('ใดใ
กใดใฑใ
ใ
ใ
ใด', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
กใดใฑใ
ใ
ใ
ใด', '', [], ['eusi']),              ],          }, -        { +        '-๋๊ตฌ๋จผ': {              name: '-๋๊ตฌ๋จผ',              rules: [                  suffixInflection('ใดใ
กใดใฑใ
ใ
ใ
ใด', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
กใดใฑใ
ใ
ใ
ใด', '', [], ['eusi']),              ],          }, -        { +        '-๋๊ตฌ๋ฉด': {              name: '-๋๊ตฌ๋ฉด',              rules: [                  suffixInflection('ใดใ
กใดใฑใ
ใ
ใ
ใด', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
กใดใฑใ
ใ
ใ
ใด', '', [], ['eusi']),              ],          }, -        { +        '-๋๊ตฐ': {              name: '-๋๊ตฐ',              rules: [                  suffixInflection('ใดใ
กใดใฑใ
ใด', 'ใทใ
', [], ['v']),                  suffixInflection('ใดใ
กใดใฑใ
ใด', '', [], ['eusi']),              ],          }, -        { +        '-๋๊ถ๋': {              name: '-๋๊ถ๋',              rules: [                  suffixInflection('ใดใ
กใดใฑใ
ใ
ใดใ
ฃ', 'ใทใ
', [], ['v']), @@ -971,7 +971,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
กใดใฑใ
ใ
ใดใ
ฃ', '์๋ค', [], []),              ],          }, -        { +        '-๋๊ณผ๋': {              name: '-๋๊ณผ๋',              rules: [                  suffixInflection('ใดใ
กใดใฑใ
ใ
ใดใ
ฃ', 'ใทใ
', [], ['v']), @@ -980,7 +980,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
กใดใฑใ
ใ
ใดใ
ฃ', '์๋ค', [], []),              ],          }, -        { +        '-(๋)ใด๋ค': {              name: '-(๋)ใด๋ค',              rules: [                  suffixInflection('ใดใทใ
', 'ใทใ
', [], ['v']), @@ -989,7 +989,7 @@ export const koreanTransforms = {                  suffixInflection('ใดใทใ
', '', [], ['eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค๊ณ ': {              name: '-((๋)ใด)๋ค๊ณ ',              rules: [                  suffixInflection('ใดใทใ
ใฑใ
', 'ใทใ
', [], ['v']), @@ -1000,7 +1000,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใฑใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค๋': {              name: '-((๋)ใด)๋ค๋',              rules: [                  suffixInflection('ใดใทใ
ใดใ
', 'ใทใ
', [], ['v']), @@ -1011,7 +1011,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใดใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค๋ค': {              name: '-((๋)ใด)๋ค๋ค',              rules: [                  suffixInflection('ใดใทใ
ใดใ
', 'ใทใ
', [], ['v']), @@ -1022,7 +1022,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใดใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค๋๋': {              name: '-((๋)ใด)๋ค๋๋',              rules: [                  suffixInflection('ใดใทใ
ใดใ
กใดใ
ฃ', 'ใทใ
', [], ['v']), @@ -1033,7 +1033,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใดใ
กใดใ
ฃ', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค๋': {              name: '-((๋)ใด)๋ค๋',              rules: [                  suffixInflection('ใดใทใ
ใดใ
ฃ', 'ใทใ
', [], ['v']), @@ -1044,7 +1044,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใดใ
ฃ', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค๋๊น': {              name: '-((๋)ใด)๋ค๋๊น',              rules: [                  suffixInflection('ใดใทใ
ใดใ
ฃใฒใ
', 'ใทใ
', [], ['v']), @@ -1055,7 +1055,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใดใ
ฃใฒใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค๋๋ผ': {              name: '-((๋)ใด)๋ค๋๋ผ',              rules: [                  suffixInflection('ใดใทใ
ใทใ
ในใ
', 'ใทใ
', [], ['v']), @@ -1066,7 +1066,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใทใ
ในใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค๋ง๋': {              name: '-((๋)ใด)๋ค๋ง๋',              rules: [                  suffixInflection('ใดใทใ
ใ
ใ
ใดใ
กใด', 'ใทใ
', [], ['v', 'ida']), @@ -1077,7 +1077,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใ
ใ
ใดใ
กใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค๋ง': {              name: '-((๋)ใด)๋ค๋ง',              rules: [                  suffixInflection('ใดใทใ
ใ
ใ
ใด', 'ใทใ
', [], ['v', 'ida']), @@ -1088,7 +1088,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใ
ใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค๋ฉฐ': {              name: '-((๋)ใด)๋ค๋ฉฐ',              rules: [                  suffixInflection('ใดใทใ
ใ
ใ
', 'ใทใ
', [], ['v']), @@ -1099,7 +1099,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใ
ใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค๋ฉด': {              name: '-((๋)ใด)๋ค๋ฉด',              rules: [                  suffixInflection('ใดใทใ
ใ
ใ
ใด', 'ใทใ
', [], ['v']), @@ -1110,7 +1110,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใ
ใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค๋ฉด์': {              name: '-((๋)ใด)๋ค๋ฉด์',              rules: [                  suffixInflection('ใดใทใ
ใ
ใ
ใดใ
ใ
', 'ใทใ
', [], ['v']), @@ -1121,7 +1121,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใ
ใ
ใดใ
ใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค์': {              name: '-((๋)ใด)๋ค์',              rules: [                  suffixInflection('ใดใทใ
ใ
ใ
ใด', 'ใทใ
', [], ['v']), @@ -1132,7 +1132,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใ
ใ
ใดใ
ใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค์ค': {              name: '-((๋)ใด)๋ค์ค',              rules: [                  suffixInflection('ใดใทใ
ใ
ใ
', 'ใทใ
', [], ['v']), @@ -1143,7 +1143,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใ
ใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ค์ง': {              name: '-((๋)ใด)๋ค์ง',              rules: [                  suffixInflection('ใดใทใ
ใ
ใ
ฃ', 'ใทใ
', [], ['v']), @@ -1154,7 +1154,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใ
ใ
ฃ', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋จ๋ค': {              name: '-((๋)ใด)๋จ๋ค',              rules: [                  suffixInflection('ใดใทใ
ใดใทใ
', 'ใทใ
', [], ['v']), @@ -1165,7 +1165,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใดใทใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ด': {              name: '-((๋)ใด)๋ด',              rules: [                  suffixInflection('ใดใทใ
ใ
', 'ใทใ
', [], ['v']), @@ -1176,7 +1176,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ต๋๊น': {              name: '-((๋)ใด)๋ต๋๊น',              rules: [                  suffixInflection('ใดใทใ
ใ
ใดใ
ฃใฒใ
', 'ใทใ
', [], ['v']), @@ -1187,7 +1187,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใ
ใดใ
ฃใฒใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ต๋๋ค': {              name: '-((๋)ใด)๋ต๋๋ค',              rules: [                  suffixInflection('ใดใทใ
ใ
ใดใ
ฃใทใ
', 'ใทใ
', [], ['v']), @@ -1198,7 +1198,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใ
ใดใ
ฃใทใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋ต์๊ณ ': {              name: '-((๋)ใด)๋ต์๊ณ ',              rules: [                  suffixInflection('ใดใทใ
ใ
ใ
ใ
ฃใฑใ
', 'ใทใ
', [], ['v']), @@ -1209,7 +1209,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใ
ใ
ใ
ฃใฑใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋': {              name: '-((๋)ใด)๋',              rules: [                  suffixInflection('ใดใทใ
', 'ใทใ
', [], ['v']), @@ -1220,7 +1220,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-((๋)ใด)๋์': {              name: '-((๋)ใด)๋์',              rules: [                  suffixInflection('ใดใทใ
ใ
ใ
', 'ใทใ
', [], ['v', 'ida']), @@ -1233,7 +1233,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
กใดใทใ
ใ
ใ
', '์๋ค', [], []),              ],          }, -        { +        '-((๋)ใด)๋๋ค': {              name: '-((๋)ใด)๋๋ค',              rules: [                  suffixInflection('ใดใทใ
ใดใทใ
', 'ใทใ
', [], ['v']), @@ -1244,7 +1244,7 @@ export const koreanTransforms = {                  suffixInflection('ใทใ
ใดใทใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-(์ผ/๋)ใด๋ฐ': {              name: '-(์ผ/๋)ใด๋ฐ',              rules: [                  suffixInflection('ใดใทใ
', 'ใทใ
', [], ['adj', 'ida']), @@ -1257,7 +1257,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
กใดใทใ
', '์๋ค', [], []),              ],          }, -        { +        '-(์ผ/๋)ใด๋์ผ': {              name: '-(์ผ/๋)ใด๋์ผ',              rules: [                  suffixInflection('ใดใทใ
ใ
ใ
ใ
', 'ใทใ
', [], ['adj', 'ida']), @@ -1270,13 +1270,13 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
กใดใทใ
ใ
ใ
ใ
', '', [], []),              ],          }, -        { +        '-๋๋๋ค': {              name: '-๋๋๋ค',              rules: [                  suffixInflection('ใดใ
กใดใทใ
ใทใ
', 'ใทใ
', [], ['v']),              ],          }, -        { +        '-(์ผ/๋)ใด๋ฐ': {              name: '-(์ผ/๋)ใด๋ฐ',              rules: [                  suffixInflection('ใดใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -1290,7 +1290,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
กใดใ
ใ
', '์๋ค', [], []),              ],          }, -        { +        '-(์ผ/๋)ใด์ง': {              name: '-(์ผ/๋)ใด์ง',              rules: [                  suffixInflection('ใดใ
ใ
ฃ', 'ใทใ
', [], ['adj', 'ida']), @@ -1303,7 +1303,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
กใดใ
ใ
ฃ', '์๋ค', [], []),              ],          }, -        { +        '-(์ผ/๋)ใด์ง๊ณ ': {              name: '-(์ผ/๋)ใด์ง๊ณ ',              rules: [                  suffixInflection('ใดใ
ใ
ฃใฑใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -1316,7 +1316,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
กใดใ
ใ
ฃใฑใ
', '์๋ค', [], []),              ],          }, -        { +        '-(์ผ/๋)ใด์ง๋ผ': {              name: '-(์ผ/๋)ใด์ง๋ผ',              rules: [                  suffixInflection('ใดใ
ใ
ฃในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -1329,7 +1329,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
กใดใ
ใ
ฃในใ
', '์๋ค', [], []),              ],          }, -        { +        '-(์ผ)๋': {              name: '-(์ผ)๋',              rules: [                  suffixInflection('ใดใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -1342,7 +1342,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใดใ
ฃ', '', [], ['p', 'f', 'eusi', 'euo', 'sao', 'jao']),              ],          }, -        { +        '-(์ผ)๋๊น': {              name: '-(์ผ)๋๊น',              rules: [                  suffixInflection('ใดใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -1356,7 +1356,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใดใ
ฃใฒใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)๋๊น๋๋ฃจ': {              name: '-(์ผ)๋๊น๋๋ฃจ',              rules: [                  suffixInflection('ใดใ
ฃใฒใ
ใดใ
กในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -1370,7 +1370,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใดใ
ฃใฒใ
ใดใ
กในใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)๋๊น๋': {              name: '-(์ผ)๋๊น๋',              rules: [                  suffixInflection('ใดใ
ฃใฒใ
ใดใ
กใด', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -1384,7 +1384,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใดใ
ฃใฒใ
ใดใ
กใด', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)๋๊น': {              name: '-(์ผ)๋๊น',              rules: [                  suffixInflection('ใดใ
ฃใฒใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -1398,7 +1398,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใดใ
ฃใฒใ
ใด', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ/๋)๋๋ผ': {              name: '-(์ผ/๋)๋๋ผ',              rules: [                  suffixInflection('ใดใ
ฃในใ
', 'ใทใ
', [], ['adj', 'ida']), @@ -1409,7 +1409,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใดใ
ฃในใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-(์ผ/๋)๋๋ง์น': {              name: '-(์ผ/๋)๋๋ง์น',              rules: [                  suffixInflection('ใดใ
ฃใ
ใ
ใดใ
ใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -1421,7 +1421,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใดใ
ฃใ
ใ
ใดใ
ใ
ฃ', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ/๋)๋๋งํผ': {              name: '-(์ผ/๋)๋๋งํผ',              rules: [                  suffixInflection('ใดใ
ฃใ
ใ
ใดใ
ใ
กใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -1433,41 +1433,41 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใดใ
ฃใ
ใ
ใดใ
ใ
กใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-๋ค': {              name: '-๋ค',              rules: [                  suffixInflection('ใทใ
', '', [], ['p', 'f', 'eusi', 'ida']),              ],          }, -        { +        '-๋ค๊ฐ': {              name: '-๋ค๊ฐ',              rules: [                  suffixInflection('ใทใ
ใฑใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใทใ
ใฑใ
', '', [], ['p', 'eusi']),              ],          }, -        { +        '-๋ค๊ฐ๋': {              name: '-๋ค๊ฐ๋',              rules: [                  suffixInflection('ใทใ
ใฑใ
ใดใ
กใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใฑใ
ใดใ
กใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋ค๊ฐ': {              name: '-๋ค๊ฐ',              rules: [                  suffixInflection('ใทใ
ใฑใ
ใด', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใทใ
ใฑใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋ค๋ง๋ค': {              name: '-๋ค๋ง๋ค',              rules: [                  suffixInflection('ใทใ
ใ
ใ
ใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใ
ใ
ใทใ
', '', [], ['p', 'eusi']),              ],          }, -        { +        '-๋ค์ํผ': {              name: '-๋ค์ํผ',              rules: [                  suffixInflection('ใทใ
ใ
ใ
ฃใ
ใ
ฃ', 'ใทใ
', [], ['v', 'adj']), @@ -1476,237 +1476,237 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใทใ
ใ
ใ
ฃใ
ใ
ฃ', '์๋ค', [], []),              ],          }, -        { +        '-๋จ': {              name: '-๋จ',              rules: [                  suffixInflection('ใทใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋': {              name: '-๋',              rules: [                  suffixInflection('ใทใ
', 'ใทใ
', ['do'], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
', '', ['do'], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๊ตฌ๋': {              name: '-๋๊ตฌ๋',              rules: [                  suffixInflection('ใทใ
ใฑใ
ใดใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใฑใ
ใดใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๊ตฌ๋ ค': {              name: '-๋๊ตฌ๋ ค',              rules: [                  suffixInflection('ใทใ
ใฑใ
ในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใฑใ
ในใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๊ตฌ๋ฃ': {              name: '-๋๊ตฌ๋ฃ',              rules: [                  suffixInflection('ใทใ
ใฑใ
ในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใฑใ
ในใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๊ตฌ๋ง': {              name: '-๋๊ตฌ๋ง',              rules: [                  suffixInflection('ใทใ
ใฑใ
ใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใฑใ
ใ
ใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๊ตฌ๋จผ': {              name: '-๋๊ตฌ๋จผ',              rules: [                  suffixInflection('ใทใ
ใฑใ
ใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใฑใ
ใ
ใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๊ตฌ๋ฉด': {              name: '-๋๊ตฌ๋ฉด',              rules: [                  suffixInflection('ใทใ
ใฑใ
ใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใฑใ
ใ
ใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๊ตฐ': {              name: '-๋๊ตฐ',              rules: [                  suffixInflection('ใทใ
ใฑใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใฑใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋': {              name: '-๋๋',              rules: [                  suffixInflection('ใทใ
ใดใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋จ': {              name: '-๋๋จ',              rules: [                  suffixInflection('ใทใ
ใดใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋': {              name: '-๋๋',              rules: [                  suffixInflection('ใทใ
ใดใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใ
ฃ', '', [], ['p', 'f', 'eusi', 'euob', 'euo', 'sab']),              ],          }, -        { +        '-๋๋๋ผ': {              name: '-๋๋๋ผ',              rules: [                  suffixInflection('ใทใ
ใดใ
ฃในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใ
ฃในใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋๋ง๋': {              name: '-๋๋๋ง๋',              rules: [                  suffixInflection('ใทใ
ใดใ
ฃใ
ใ
ใดใ
กใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใ
ฃใ
ใ
ใดใ
กใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋๋ง': {              name: '-๋๋๋ง',              rules: [                  suffixInflection('ใทใ
ใดใ
ฃใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใ
ฃใ
ใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋์ด๊น': {              name: '-๋๋์ด๊น',              rules: [                  suffixInflection('ใทใ
ใดใ
ฃใ
ใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใ
ฃใ
ใ
ฃใฒใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋์ด๋ค': {              name: '-๋๋์ด๋ค',              rules: [                  suffixInflection('ใทใ
ใดใ
ฃใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใ
ฃใ
ใ
ฃใทใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋ผ๋': {              name: '-๋๋ผ๋',              rules: [                  suffixInflection('ใทใ
ในใ
ใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ในใ
ใทใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋์ด๊น': {              name: '-๋์ด๊น',              rules: [                  suffixInflection('ใทใ
ใ
ใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใ
ใ
ฃใฒใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋์ด๋ค': {              name: '-๋์ด๋ค',              rules: [                  suffixInflection('ใทใ
ใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใ
ใ
ฃใทใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋': {              name: '-๋',              rules: [                  suffixInflection('ใทใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๊ฐ': {              name: '-๋๊ฐ',              rules: [                  suffixInflection('ใทใ
ใดใฑใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใฑใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๊ฐ': {              name: '-๋๊ฐ',              rules: [                  suffixInflection('ใทใ
ใดใฑใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใฑใ
ใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๊ฑธ': {              name: '-๋๊ฑธ',              rules: [                  suffixInflection('ใทใ
ใดใฑใ
ใน', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใฑใ
ใน', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๊ณ ': {              name: '-๋๊ณ ',              rules: [                  suffixInflection('ใทใ
ใดใฑใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใฑใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋ฐ': {              name: '-๋๋ฐ',              rules: [                  suffixInflection('ใทใ
ใดใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใทใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋ค': {              name: '-๋๋ค',              rules: [                  suffixInflection('ใทใ
ใดใทใ
กใน', '', [], ['p']),              ],          }, -        { +        '-๋๋ฐ': {              name: '-๋๋ฐ',              rules: [                  suffixInflection('ใทใ
ใดใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใ
ใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋์ง': {              name: '-๋์ง',              rules: [                  suffixInflection('ใทใ
ใดใ
ใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใดใ
ใ
ฃ', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋ฐ': {              name: '-๋ฐ',              rules: [                  suffixInflection('ใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋ฐ์': {              name: '-๋ฐ์',              rules: [                  suffixInflection('ใทใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใ
ใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋ค': {              name: '-๋๋ค',              rules: [                  suffixInflection('ใทใ
ใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ใทใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋ก': {              name: '-๋๋ก',              rules: [                  suffixInflection('ใทใ
ในใ
ใฑ', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใทใ
ในใ
ใฑ', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)๋': {              name: '-(์ผ)๋',              rules: [                  suffixInflection('ใทใ
ใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -1715,152 +1715,152 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใทใ
ใ
ฃ', '', [], ['p', 'f']),              ],          }, -        { +        '-๋๊ตฌ๋': {              name: '-๋๊ตฌ๋',              rules: [                  suffixInflection('ใทใ
กใฑใ
ใดใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใฑใ
ใดใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๊ตฌ๋ฃ': {              name: '-๋๊ตฌ๋ฃ',              rules: [                  suffixInflection('ใทใ
กใฑใ
ในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใฑใ
ในใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๊ตฌ๋ฉด': {              name: '-๋๊ตฌ๋ฉด',              rules: [                  suffixInflection('ใทใ
กใฑใ
ใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใฑใ
ใ
ใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๊ตฐ': {              name: '-๋๊ตฐ',              rules: [                  suffixInflection('ใทใ
กใฑใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใฑใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋': {              name: '-๋๋',              rules: [                  suffixInflection('ใทใ
กใดใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใดใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋': {              name: '-๋๋',              rules: [                  suffixInflection('ใทใ
กใดใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใดใ
ฃ', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋๋ผ': {              name: '-๋๋๋ผ',              rules: [                  suffixInflection('ใทใ
กใดใ
ฃในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใดใ
ฃในใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋ผ': {              name: '-๋๋ผ',              rules: [                  suffixInflection('ใทใ
กในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กในใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋ผ๋': {              name: '-๋๋ผ๋',              rules: [                  suffixInflection('ใทใ
กในใ
ใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กในใ
ใทใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋๋ผ๋ฉด': {              name: '-๋๋ผ๋ฉด',              rules: [                  suffixInflection('ใทใ
กในใ
ใ
ใ
ใด', '', [], ['p']),              ],          }, -        { +        '-๋๋๋': {              name: '-๋๋๋',              rules: [                  suffixInflection('ใทใ
กในใ
ใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กในใ
ใทใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋ ': {              name: '-๋ ',              rules: [                  suffixInflection('ใทใ
กใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใด', '', [], ['p', 'eusi']),              ],          }, -        { +        '-๋ ๊ฐ': {              name: '-๋ ๊ฐ',              rules: [                  suffixInflection('ใทใ
กใดใฑใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใดใฑใ
', '', [], ['p', 'eusi']),              ],          }, -        { +        '-๋ ๊ฑธ': {              name: '-๋ ๊ฑธ',              rules: [                  suffixInflection('ใทใ
กใดใฑใ
ใน', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใดใฑใ
ใน', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋ ๊ณ ': {              name: '-๋ ๊ณ ',              rules: [                  suffixInflection('ใทใ
กใดใฑใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใดใฑใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋ ๋ฐ': {              name: '-๋ ๋ฐ',              rules: [                  suffixInflection('ใทใ
กใดใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใดใทใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋ ๋ค': {              name: '-๋ ๋ค',              rules: [                  suffixInflection('ใทใ
กใดใทใ
กใน', '', [], ['p']),              ],          }, -        { +        '-๋ ์ง': {              name: '-๋ ์ง',              rules: [                  suffixInflection('ใทใ
กใดใ
ใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใดใ
ใ
ฃ', '', [], ['p', 'eusi']),              ],          }, -        { +        '-๋ฏ': {              name: '-๋ฏ',              rules: [                  suffixInflection('ใทใ
กใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋ฏ์ด': {              name: '-๋ฏ์ด',              rules: [                  suffixInflection('ใทใ
กใ
ใ
ใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
กใ
ใ
ใ
ฃ', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-๋': {              name: '-๋',              rules: [                  suffixInflection('ใทใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใทใ
ฃ', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-(์ผ)๋ผ': {              name: '-(์ผ)๋ผ',              rules: [                  suffixInflection('ในใ
', 'ใทใ
', [], ['v', 'ida']), @@ -1873,7 +1873,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋ผ๊ณ ': {              name: '-(์ผ)๋ผ๊ณ ',              rules: [                  suffixInflection('ในใ
ใฑใ
', 'ใทใ
', [], ['v', 'ida']), @@ -1886,7 +1886,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใฑใ
', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋ผ๊ตฌ': {              name: '-(์ผ)๋ผ๊ตฌ',              rules: [                  suffixInflection('ในใ
ใฑใ
', 'ใทใ
', [], ['v', 'ida']), @@ -1899,7 +1899,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใฑใ
', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋ผ๋': {              name: '-(์ผ)๋ผ๋',              rules: [                  suffixInflection('ในใ
ใดใ
', 'ใทใ
', [], ['v', 'ida']), @@ -1912,7 +1912,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใดใ
', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋ผ๋ค': {              name: '-(์ผ)๋ผ๋ค',              rules: [                  suffixInflection('ในใ
ใดใ
', 'ใทใ
', [], ['v', 'ida']), @@ -1925,7 +1925,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใดใ
', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋ผ๋๋': {              name: '-(์ผ)๋ผ๋๋',              rules: [                  suffixInflection('ในใ
ใดใ
กใดใ
ฃ', 'ใทใ
', [], ['v', 'ida']), @@ -1938,7 +1938,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใดใ
กใดใ
ฃ', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋ผ๋': {              name: '-(์ผ)๋ผ๋',              rules: [                  suffixInflection('ในใ
ใดใ
ฃ', 'ใทใ
', [], ['v', 'ida']), @@ -1951,7 +1951,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใดใ
ฃ', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋ผ๋๊น': {              name: '-(์ผ)๋ผ๋๊น',              rules: [                  suffixInflection('ในใ
ใดใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'ida']), @@ -1964,14 +1964,14 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใดใ
ฃใฒใ
', '', [], ['eusi', 'do']),              ],          }, -        { +        '-๋ผ๋': {              name: '-๋ผ๋',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใทใ
', '์๋๋ค', [], ['adj']),                  suffixInflection('ในใ
ใทใ
', 'ใทใ
', [], ['ida']),              ],          }, -        { +        '-(์ผ)๋ผ๋ฉฐ': {              name: '-(์ผ)๋ผ๋ฉฐ',              rules: [                  suffixInflection('ในใ
ใ
ใ
', 'ใทใ
', [], ['v', 'ida']), @@ -1984,7 +1984,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋ผ๋ฉด': {              name: '-(์ผ)๋ผ๋ฉด',              rules: [                  suffixInflection('ในใ
ใ
ใ
ใด', 'ใทใ
', [], ['v', 'ida']), @@ -1997,7 +1997,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
ใด', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋ผ๋ฉด์': {              name: '-(์ผ)๋ผ๋ฉด์',              rules: [                  suffixInflection('ในใ
ใ
ใ
ใดใ
ใ
', 'ใทใ
', [], ['v', 'ida']), @@ -2010,7 +2010,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
ใดใ
ใ
', '', [], ['eusi', 'do']),              ],          }, -        { +        '-๋ผ์': {              name: '-๋ผ์',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใ
ใ
', '์๋๋ค', [], ['adj']), @@ -2018,7 +2018,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)๋ผ์': {              name: '-(์ผ)๋ผ์',              rules: [                  suffixInflection('ในใ
ใ
ใ
ใด', 'ใทใ
', [], ['v', 'ida']), @@ -2031,7 +2031,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
ใด', '', [], ['eusi', 'do']),              ],          }, -        { +        '-๋ผ์ผ': {              name: '-๋ผ์ผ',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใ
ใ
', '์๋๋ค', [], ['adj']), @@ -2039,7 +2039,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ผ์ผ๋ง': {              name: '-๋ผ์ผ๋ง',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใ
ใ
ใ
ใ
ใด', '์๋๋ค', [], ['adj']), @@ -2047,7 +2047,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
ใ
ใ
ใด', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)๋ผ์ค': {              name: '-(์ผ)๋ผ์ค',              rules: [                  suffixInflection('ในใ
ใ
ใ
', 'ใทใ
', [], ['v', 'ida']), @@ -2060,7 +2060,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋ผ์ง': {              name: '-(์ผ)๋ผ์ง',              rules: [                  suffixInflection('ในใ
ใ
ใ
ฃ', 'ใทใ
', [], ['v', 'ida']), @@ -2073,7 +2073,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
ฃ', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋ฝ': {              name: '-(์ผ)๋ฝ',              rules: [                  suffixInflection('ในใ
ใฑ', 'ใทใ
', [], ['v', 'adj']), @@ -2085,7 +2085,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กในใ
ใฑ', 'ใทใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-(์ผ)๋': {              name: '-(์ผ)๋',              rules: [                  suffixInflection('ในใ
ใด', 'ใทใ
', [], ['v', 'ida']), @@ -2098,7 +2098,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใด', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋๋ค': {              name: '-(์ผ)๋๋ค',              rules: [                  suffixInflection('ในใ
ใดใทใ
', 'ใทใ
', [], ['v', 'ida']), @@ -2111,7 +2111,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใดใทใ
', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋': {              name: '-(์ผ)๋',              rules: [                  suffixInflection('ในใ
ใ
', 'ใทใ
', [], ['v', 'ida']), @@ -2124,7 +2124,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋๋๊น': {              name: '-(์ผ)๋๋๊น',              rules: [                  suffixInflection('ในใ
ใ
ใดใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'ida']), @@ -2137,7 +2137,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใดใ
ฃใฒใ
', '', [], ['eusi', 'do']),              ],          }, -        { +        '-(์ผ)๋๋๋ค': {              name: '-(์ผ)๋๋๋ค',              rules: [                  suffixInflection('ในใ
ใ
ใดใ
ฃใทใ
', 'ใทใ
', [], ['v', 'ida']), @@ -2150,7 +2150,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใดใ
ฃใทใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋์๊ณ ': {              name: '-๋์๊ณ ',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใ
ใ
ใ
ฃใฑใ
', '์๋๋ค', [], ['adj']), @@ -2158,7 +2158,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
ใ
ฃใฑใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)๋': {              name: '-(์ผ)๋',              rules: [                  suffixInflection('ในใ
', 'ใทใ
', [], ['v', 'ida']), @@ -2171,7 +2171,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)๋์': {              name: '-(์ผ)๋์',              rules: [                  suffixInflection('ในใ
ใ
ใ
', 'ใทใ
', [], ['v', 'ida']), @@ -2184,7 +2184,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)๋ด': {              name: '-(์ผ)๋ด',              rules: [                  suffixInflection('ในใ
', 'ใทใ
', [], ['v', 'ida']), @@ -2196,7 +2196,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)๋ฌ': {              name: '-(์ผ)๋ฌ',              rules: [                  suffixInflection('ในใ
', 'ใทใ
', [], ['v', 'ida']), @@ -2208,7 +2208,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ฌ๋': {              name: '-๋ฌ๋',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใดใ
ฃ', '์๋๋ค', [], ['adj']), @@ -2216,7 +2216,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใดใ
ฃ', '', [], ['eusi']),              ],          }, -        { +        '-๋ฌ๋๋ผ': {              name: '-๋ฌ๋๋ผ',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใดใ
ฃในใ
', '์๋๋ค', [], ['adj']), @@ -2224,7 +2224,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใดใ
ฃในใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ฌ๋์ด๊น': {              name: '-๋ฌ๋์ด๊น',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใดใ
ฃใ
ใ
ฃใฒใ
', '์๋๋ค', [], ['adj']), @@ -2232,7 +2232,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใดใ
ฃใ
ใ
ฃใฒใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ฌ๋์ด๋ค': {              name: '-๋ฌ๋์ด๋ค',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใดใ
ฃใ
ใ
ฃใทใ
', '์๋๋ค', [], ['adj']), @@ -2240,7 +2240,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใดใ
ฃใ
ใ
ฃใทใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ฌ๋ผ': {              name: '-๋ฌ๋ผ',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ในใ
', '์๋๋ค', [], ['adj']), @@ -2248,7 +2248,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ในใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ฌ์ด๊น': {              name: '-๋ฌ์ด๊น',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใ
ใ
ฃใฒใ
', '์๋๋ค', [], ['adj']), @@ -2256,7 +2256,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
ฃใฒใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ฌ์ด๋ค': {              name: '-๋ฌ์ด๋ค',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใ
ใ
ฃใทใ
', '์๋๋ค', [], ['adj']), @@ -2264,7 +2264,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
ฃใทใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ฐ๊ฐ': {              name: '-๋ฐ๊ฐ',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใดใฑใ
', '์๋๋ค', [], ['adj']), @@ -2272,7 +2272,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใดใฑใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ฐ๋ค': {              name: '-๋ฐ๋ค',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใดใทใ
กใน', '์๋๋ค', [], ['adj']), @@ -2280,7 +2280,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใดใทใ
กใน', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)๋ ค': {              name: '-(์ผ)๋ ค',              rules: [                  suffixInflection('ในใ
', 'ใทใ
', [], ['v']), @@ -2293,7 +2293,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ ค๊ฑฐ๋ ': {              name: '-(์ผ)๋ ค๊ฑฐ๋ ',              rules: [                  suffixInflection('ในใ
ใฑใ
ใทใ
กใด', 'ใทใ
', [], ['v']), @@ -2306,7 +2306,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใฑใ
ใทใ
กใด', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ ค๊ณ ': {              name: '-(์ผ)๋ ค๊ณ ',              rules: [                  suffixInflection('ในใ
ใฑใ
', 'ใทใ
', [], ['v', 'adj']), @@ -2319,7 +2319,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใฑใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ ค๋': {              name: '-(์ผ)๋ ค๋',              rules: [                  suffixInflection('ในใ
ใดใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2333,7 +2333,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใดใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ ค๋': {              name: '-(์ผ)๋ ค๋',              rules: [                  suffixInflection('ในใ
ใดใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2347,7 +2347,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใดใ
ฃ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ ค๋์': {              name: '-(์ผ)๋ ค๋์',              rules: [                  suffixInflection('ในใ
ใดใ
ฃใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2361,7 +2361,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใดใ
ฃใ
ใ
ใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ ค๋ ': {              name: '-(์ผ)๋ ค๋ ',              rules: [                  suffixInflection('ในใ
ใทใ
กใด', 'ใทใ
', [], ['v']), @@ -2374,7 +2374,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใทใ
กใด', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ ค๋ง': {              name: '-(์ผ)๋ ค๋ง',              rules: [                  suffixInflection('ในใ
ใ
ใ
', 'ใทใ
', [], ['v']), @@ -2387,7 +2387,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ ค๋ฉด': {              name: '-(์ผ)๋ ค๋ฉด',              rules: [                  suffixInflection('ในใ
ใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2401,7 +2401,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ใ
ใด', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ ค๋ฌด๋': {              name: '-(์ผ)๋ ค๋ฌด๋',              rules: [                  suffixInflection('ในใ
ใ
ใ
ใดใ
', 'ใทใ
', [], ['v']), @@ -2414,7 +2414,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ใ
ใดใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ จ': {              name: '-(์ผ)๋ จ',              rules: [                  suffixInflection('ในใ
ใด', 'ใทใ
', [], ['v']), @@ -2427,7 +2427,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใด', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ จ๋ง๋': {              name: '-(์ผ)๋ จ๋ง๋',              rules: [                  suffixInflection('ในใ
ใดใ
ใ
ใดใ
กใด', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2441,7 +2441,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใดใ
ใ
ใดใ
กใด', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ จ๋ง': {              name: '-(์ผ)๋ จ๋ง',              rules: [                  suffixInflection('ในใ
ใดใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2455,7 +2455,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใดใ
ใ
ใด', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ ด': {              name: '-(์ผ)๋ ด',              rules: [                  suffixInflection('ในใ
ใ
', 'ใทใ
', [], ['v']), @@ -2468,7 +2468,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ ต๋๊น': {              name: '-(์ผ)๋ ต๋๊น',              rules: [                  suffixInflection('ในใ
ใ
ใดใ
ฃใฒใ
', 'ใทใ
', [], ['v']), @@ -2481,7 +2481,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ใดใ
ฃใฒใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ ต๋๋ค': {              name: '-(์ผ)๋ ต๋๋ค',              rules: [                  suffixInflection('ในใ
ใ
ใดใ
ฃใทใ
', 'ใทใ
', [], ['v']), @@ -2494,7 +2494,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ใดใ
ฃใทใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ ท๋ค': {              name: '-(์ผ)๋ ท๋ค',              rules: [                  suffixInflection('ในใ
ใ
ใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2508,7 +2508,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ใทใ
', '', [], ['p']),              ],          }, -        { +        '-๋ก๊ณ ': {              name: '-๋ก๊ณ ',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใฑใ
', '์๋๋ค', [], ['adj']), @@ -2516,7 +2516,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใฑใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ก๊ณ ๋': {              name: '-๋ก๊ณ ๋',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใฑใ
ใดใ
', '์๋๋ค', [], ['adj']), @@ -2524,7 +2524,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใฑใ
ใดใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ก๊ตฌ๋': {              name: '-๋ก๊ตฌ๋',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใฑใ
ใดใ
', '์๋๋ค', [], ['adj']), @@ -2532,7 +2532,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใฑใ
ใดใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ก๊ตฌ๋ ค': {              name: '-๋ก๊ตฌ๋ ค',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใฑใ
ในใ
', '์๋๋ค', [], ['adj']), @@ -2540,7 +2540,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใฑใ
ในใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ก๊ตฌ๋ฃ': {              name: '-๋ก๊ตฌ๋ฃ',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใฑใ
ในใ
', '์๋๋ค', [], ['adj']), @@ -2548,7 +2548,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใฑใ
ในใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ก๊ตฌ๋ง': {              name: '-๋ก๊ตฌ๋ง',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใฑใ
ใ
ใ
ใด', '์๋๋ค', [], ['adj']), @@ -2556,7 +2556,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใฑใ
ใ
ใ
ใด', '', [], ['eusi']),              ],          }, -        { +        '-๋ก๊ตฌ๋จผ': {              name: '-๋ก๊ตฌ๋จผ',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใฑใ
ใ
ใ
ใด', '์๋๋ค', [], ['adj']), @@ -2564,7 +2564,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใฑใ
ใ
ใ
ใด', '', [], ['eusi']),              ],          }, -        { +        '-๋ก๊ตฌ๋ฉด': {              name: '-๋ก๊ตฌ๋ฉด',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใฑใ
ใ
ใ
ใด', '์๋๋ค', [], ['adj']), @@ -2572,7 +2572,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใฑใ
ใ
ใ
ใด', '', [], ['eusi']),              ],          }, -        { +        '-๋ก๊ตฐ': {              name: '-๋ก๊ตฐ',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใฑใ
ใด', '์๋๋ค', [], ['adj']), @@ -2580,7 +2580,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใฑใ
ใด', '', [], ['eusi']),              ],          }, -        { +        '-๋ก๋ค': {              name: '-๋ก๋ค',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใทใ
', '์๋๋ค', [], ['adj']), @@ -2588,7 +2588,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใทใ
', '', [], ['eusi']),              ],          }, -        { +        '-๋ก๋': {              name: '-๋ก๋',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใทใ
ใ
ฃ', '์๋๋ค', [], ['adj']), @@ -2596,7 +2596,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใทใ
ใ
ฃ', '', [], ['eusi']),              ],          }, -        { +        '-๋ก๋ผ': {              name: '-๋ก๋ผ',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ในใ
', '์๋๋ค', [], ['adj']), @@ -2604,7 +2604,7 @@ export const koreanTransforms = {                  suffixInflection('', '๋ค', [], ['ida']),              ],          }, -        { +        '-๋ก์๋': {              name: '-๋ก์๋',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใ
ใ
ใดใ
ฃ', '์๋๋ค', [], ['adj']), @@ -2612,7 +2612,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
ใดใ
ฃ', '๋ค', [], ['ida']),              ],          }, -        { +        '-๋ก์ธ': {              name: '-๋ก์ธ',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃในใ
ใ
ใ
', '์๋๋ค', [], ['adj']), @@ -2620,7 +2620,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)๋ฆฌ': {              name: '-(์ผ)๋ฆฌ',              rules: [                  suffixInflection('ในใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2634,7 +2634,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ฃ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ฆฌ๊น': {              name: '-(์ผ)๋ฆฌ๊น',              rules: [                  suffixInflection('ในใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2648,7 +2648,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ฃใฒใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ฆฌ๋': {              name: '-(์ผ)๋ฆฌ๋',              rules: [                  suffixInflection('ในใ
ฃใดใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2662,7 +2662,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ฃใดใ
ฃ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ฆฌ๋๋ผ': {              name: '-(์ผ)๋ฆฌ๋๋ผ',              rules: [                  suffixInflection('ในใ
ฃใดใ
ฃในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2676,7 +2676,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ฃใดใ
ฃในใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ฆฌ๋ค': {              name: '-(์ผ)๋ฆฌ๋ค',              rules: [                  suffixInflection('ในใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2690,7 +2690,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ฃใทใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ฆฌ๋ผ': {              name: '-(์ผ)๋ฆฌ๋ผ',              rules: [                  suffixInflection('ในใ
ฃในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2704,7 +2704,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ฃในใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ฆฌ๋ก๋ค': {              name: '-(์ผ)๋ฆฌ๋ก๋ค',              rules: [                  suffixInflection('ในใ
ฃในใ
ใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2718,7 +2718,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ฃในใ
ใทใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ฆฌ๋ง์น': {              name: '-(์ผ)๋ฆฌ๋ง์น',              rules: [                  suffixInflection('ในใ
ฃใ
ใ
ใดใ
ใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2732,7 +2732,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ฃใ
ใ
ใดใ
ใ
ฃ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ฆฌ๋งํผ': {              name: '-(์ผ)๋ฆฌ๋งํผ',              rules: [                  suffixInflection('ในใ
ฃใ
ใ
ใดใ
ใ
กใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2746,7 +2746,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ฃใ
ใ
ใดใ
ใ
กใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ฆฌ์ค': {              name: '-(์ผ)๋ฆฌ์ค',              rules: [                  suffixInflection('ในใ
ฃใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2760,7 +2760,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ฃใ
ใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)๋ง': {              name: '-(์ผ)๋ง',              rules: [                  suffixInflection('ใ
ใ
', 'ใทใ
', [], ['v']), @@ -2771,7 +2771,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
', 'ใทใทใ
', [], ['v']),              ],          }, -        { +        '-(์ผ)๋งค': {              name: '-(์ผ)๋งค',              rules: [                  suffixInflection('ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2785,7 +2785,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)๋ฉฐ': {              name: '-(์ผ)๋ฉฐ',              rules: [                  suffixInflection('ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2799,7 +2799,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)๋ฉด': {              name: '-(์ผ)๋ฉด',              rules: [                  suffixInflection('ใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2813,7 +2813,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
ใด', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)๋ฉด์': {              name: '-(์ผ)๋ฉด์',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2827,7 +2827,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
ใดใ
ใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)๋ฏ๋ก': {              name: '-(์ผ)๋ฏ๋ก',              rules: [                  suffixInflection('ใ
ใ
กในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2841,7 +2841,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
กในใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)์ฌ': {              name: '-(์ผ)์ฌ',              rules: [                  suffixInflection('ใ
ใ
', 'ใทใ
', [], ['v', 'adj']), @@ -2853,105 +2853,105 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ก', 'ใทใทใ
', [], ['v', 'adj']),              ],          }, -        { -            name: '-์ฌ์ค-', +        '-์ฌ์ค': { +            name: '-์ฌ์ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
', 'ใทใ
', ['sao'], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
', '', ['sao'], ['p', 'f']),              ],          }, -        { +        '-์ฌ์ค๋๊น': {              name: '-์ฌ์ค๋๊น',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
ฃใฒใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์ฌ์ค๋ฆฌ๊น': {              name: '-์ฌ์ค๋ฆฌ๊น',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ในใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
ในใ
ฃใฒใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์ฌ์ค๋ฆฌ๋ค': {              name: '-์ฌ์ค๋ฆฌ๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ในใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
ในใ
ฃใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์ฌ์ค๋ฆฌ์ด๊น': {              name: '-์ฌ์ค๋ฆฌ์ด๊น',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ในใ
ฃใ
ใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
ในใ
ฃใ
ใ
ฃใฒใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์ฌ์ค๋ฆฌ์ด๋ค': {              name: '-์ฌ์ค๋ฆฌ์ด๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ในใ
ฃใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
ในใ
ฃใ
ใ
ฃใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์ฌ์ค์ด๋ค': {              name: '-์ฌ์ค์ด๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใ
ฃใทใ
', '', [], ['p', 'f']),              ],          }, -        { -            name: '-์ฌ์ต-', +        '-์ฌ์ต': { +            name: '-์ฌ์ต',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใ
', 'ใทใ
', ['saob'], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
ใ
', '', ['saob'], ['p', 'f']),              ],          }, -        { +        '-์ฌ์ต๋๊น': {              name: '-์ฌ์ต๋๊น',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใดใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใดใ
ฃใฒใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์ฌ์ต๋๋ค': {              name: '-์ฌ์ต๋๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใดใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใดใ
ฃใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์ฌ์ต๋๊น': {              name: '-์ฌ์ต๋๊น',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใทใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใทใ
ฃใฒใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์ฌ์ต๋๋ค': {              name: '-์ฌ์ต๋๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใทใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใทใ
ฃใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์ฌ์': {              name: '-์ฌ์',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
ใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์ฌ์ธ๋ค': {              name: '-์ฌ์ธ๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ฃใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)์ฌ์ด๋ค': {              name: '-(์ผ)์ฌ์ด๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']), @@ -2963,14 +2963,14 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
ใ
ใ
ฃใทใ
', 'ใทใทใ
', [], ['v', 'adj']),              ],          }, -        { -            name: '-์ฝ-', +        '-์ฝ': { +            name: '-์ฝ',              rules: [                  suffixInflection('ใ
ใ
ใ
', 'ใทใ
', ['sab'], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
', '', ['sab'], ['p', 'f']),              ],          }, -        { +        '-(์ผ)์ธ': {              name: '-(์ผ)์ธ',              rules: [                  suffixInflection('ใ
ใ
', 'ใทใ
', [], ['v']), @@ -2981,13 +2981,13 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
', 'ใทใทใ
', [], ['v']),              ],          }, -        { +        '-์ธ๋': {              name: '-์ธ๋',              rules: [                  suffixInflection('ใ
ใ
ใดใ
', 'ใทใ
', [], ['v']),              ],          }, -        { +        '-(์ผ)์ธ์': {              name: '-(์ผ)์ธ์',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -2999,7 +2999,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
ใ
ใ
', 'ใทใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-(์ผ)์
์': {              name: '-(์ผ)์
์',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3011,21 +3011,21 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
ใ
ใ
', 'ใทใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-์': {              name: '-์',              rules: [                  suffixInflection('ใ
ใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์๋ค': {              name: '-์๋ค',              rules: [                  suffixInflection('ใ
ใ
ใทใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)์์': {              name: '-(์ผ)์์',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3037,28 +3037,28 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
ใ
ใ
', 'ใทใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-์์ด๊น': {              name: '-์์ด๊น',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใ
ใ
ใ
ใ
ฃใฒใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์์ด๋ค': {              name: '-์์ด๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ใ
ฃใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์ ๋ค': {              name: '-์ ๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']),                  suffixInflection('ใ
ใ
ใ
ฃใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ค)ใ
๋ค': {              name: '-(์ค)ใ
๋ค',              rules: [                  suffixInflection('ใ
ใดใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3068,7 +3068,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใดใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ค)ใ
๋ฐ๋ค': {              name: '-(์ค)ใ
๋ฐ๋ค',              rules: [                  suffixInflection('ใ
ใดใ
กใ
ฃใดใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3078,7 +3078,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใดใ
กใ
ฃใดใทใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ค)ใ
๋๊น': {              name: '-(์ค)ใ
๋๊น',              rules: [                  suffixInflection('ใ
ใดใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3088,7 +3088,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใดใ
ฃใฒใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ค)ใ
๋๋ค': {              name: '-(์ค)ใ
๋๋ค',              rules: [                  suffixInflection('ใ
ใดใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3098,7 +3098,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใดใ
ฃใทใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ค)ใ
๋๊น': {              name: '-(์ค)ใ
๋๊น',              rules: [                  suffixInflection('ใ
ใทใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3108,7 +3108,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใทใ
ฃใฒใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ค)ใ
๋๋ค': {              name: '-(์ค)ใ
๋๋ค',              rules: [                  suffixInflection('ใ
ใทใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3118,7 +3118,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใทใ
ฃใทใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ค)ใ
๋๋ค': {              name: '-(์ค)ใ
๋๋ค',              rules: [                  suffixInflection('ใ
ใทใ
ฃใดใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3128,7 +3128,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใทใ
ฃใดใทใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ค)ใ
์ฃ ': {              name: '-(์ค)ใ
์ฃ ',              rules: [                  suffixInflection('ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3138,7 +3138,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ค)ใ
์ง์': {              name: '-(์ค)ใ
์ง์',              rules: [                  suffixInflection('ใ
ใ
ใ
ฃใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3148,8 +3148,8 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ฃใ
ใ
', '', [], ['eusi']),              ],          }, -        { -            name: '-(์ผ)์-', +        '-(์ผ)์': { +            name: '-(์ผ)์',              rules: [                  suffixInflection('ใ
ใ
ฃ', 'ใทใ
', ['eusi'], ['v', 'adj', 'ida']),                  suffixInflection('ใ
ใ
กใ
ใ
ฃ', 'ใทใ
', ['eusi'], ['v', 'adj']), @@ -3161,7 +3161,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ฃ', '', ['eusi'], ['saob', 'euob', 'jaob']),              ],          }, -        { +        '-(์ผ)์์': {              name: '-(์ผ)์์',              rules: [                  suffixInflection('ใ
ใ
ฃใ
ใ
ใ
', 'ใทใ
', [], ['v']), @@ -3172,7 +3172,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
ฃใ
ใ
ใ
', 'ใทใทใ
', [], ['v']),              ],          }, -        { +        '-(์ผ)์์ด์': {              name: '-(์ผ)์์ด์',              rules: [                  suffixInflection('ใ
ใ
ฃใ
ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3184,7 +3184,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
ฃใ
ใ
ใ
ใ
', 'ใทใทใ
', [], ['v', 'adj']),              ],          }, -        { +        '-(์ผ)์ญ์ฌ': {              name: '-(์ผ)์ญ์ฌ',              rules: [                  suffixInflection('ใ
ใ
ฃใ
ใ
ใ
', 'ใทใ
', [], ['v']), @@ -3195,7 +3195,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
ฃใ
ใ
ใ
', 'ใทใทใ
', [], ['v']),              ],          }, -        { +        '-(์ผ)์ญ์๋ค': {              name: '-(์ผ)์ญ์๋ค',              rules: [                  suffixInflection('ใ
ใ
ฃใ
ใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v']), @@ -3206,7 +3206,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
ฃใ
ใ
ใ
ฃใทใ
', 'ใทใทใ
', [], ['v']),              ],          }, -        { +        '-(์ผ)์ญ์์ค': {              name: '-(์ผ)์ญ์์ค',              rules: [                  suffixInflection('ใ
ใ
ฃใ
ใ
ใ
ฃใ
ใ
', 'ใทใ
', [], ['v']), @@ -3217,7 +3217,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
ฃใ
ใ
ใ
ฃใ
ใ
', 'ใทใทใ
', [], ['v']),              ],          }, -        { +        '-์/์ด': {              name: '-์/์ด',              rules: [                  suffixInflection('ใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3248,7 +3248,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์/์ด๋ค': {              name: '-์/์ด๋ค',              rules: [                  suffixInflection('ใ
ใทใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3279,7 +3279,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์/์ด๋ค๊ฐ': {              name: '-์/์ด๋ค๊ฐ',              rules: [                  suffixInflection('ใ
ใทใ
ใฑใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3313,7 +3313,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใทใ
ใฑใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์/์ด๋': {              name: '-์/์ด๋',              rules: [                  suffixInflection('ใ
ใทใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3347,7 +3347,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์/์ด๋ผ': {              name: '-์/์ด๋ผ',              rules: [                  suffixInflection('ใ
ในใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3381,7 +3381,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ในใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์/์์': {              name: '-์/์์',              rules: [                  suffixInflection('ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3415,7 +3415,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์/์ด์ผ': {              name: '-์/์ด์ผ',              rules: [                  suffixInflection('ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3449,7 +3449,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์/์ด์ผ๊ฒ ': {              name: '-์/์ด์ผ๊ฒ ',              rules: [                  suffixInflection('ใ
ใ
ใ
ใฑใ
ใ
', 'ใทใ
', ['f'], ['v', 'adj']), @@ -3482,7 +3482,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใฑใ
ใ
', 'ใ
กใทใ
', ['f'], ['v', 'adj']),              ],          }, -        { +        '-์/์ด์ผ๋ง': {              name: '-์/์ด์ผ๋ง',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj']), @@ -3516,7 +3516,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใ
ใด', '', [], ['p', 'f']),              ],          }, -        { +        '-์/์ด์ผ์ง': {              name: '-์/์ด์ผ์ง',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ฃ', 'ใทใ
', [], ['v', 'adj']), @@ -3550,7 +3550,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใ
ฃ', '', [], ['p', 'f']),              ],          }, -        { +        '-์/์ด์': {              name: '-์/์ด์',              rules: [                  suffixInflection('ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3585,7 +3585,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์/์ด์ง์ด๋ค': {              name: '-์/์ด์ง์ด๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ฃใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3618,7 +3618,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ฃใ
ใ
ฃใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์/์': {              name: '-์/์',              rules: [                  suffixInflection('ใ
', 'ใทใ
', ['p'], ['v', 'adj']), @@ -3653,7 +3653,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ฃใ
ใ
ใ
', 'ใ
ใ
ฃ', ['p'], ['eusi']),              ],          }, -        { +        '-์/์์': {              name: '-์/์์',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใ
', 'ใทใ
', ['p'], ['v', 'adj']), @@ -3686,7 +3686,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใ
', 'ใ
กใทใ
', ['p'], ['v', 'adj']),              ],          }, -        { +        '-์/์์': {              name: '-์/์์',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3720,14 +3720,14 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ใ
', 'ใ
ใ
ฃ', [], ['eusi']),              ],          }, -        { +        '-์ผ': {              name: '-์ผ',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃใ
ใ
', '์๋๋ค', [], ['adj']),                  suffixInflection('ใ
ใ
ฃใ
ใ
', '์ด๋ค', [], ['ida']),              ],          }, -        { +        '-์ธ๋ง๋': {              name: '-์ธ๋ง๋',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ใ
ใดใ
กใด', '์๋๋ค', [], ['adj']), @@ -3735,14 +3735,14 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใดใ
ใ
ใดใ
กใด', '', [], ['eusi']),              ],          }, -        { +        '-์ธ๋ง': {              name: '-์ธ๋ง',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใ
ใ
ใดใ
ใ
ใด', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-์ธ์ ': {              name: '-์ธ์ ',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ใ
ใ
', '์๋๋ค', [], ['adj']), @@ -3750,14 +3750,14 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใดใ
ใ
ใ
', '', [], ['eusi']),              ],          }, -        { +        '-์๋ผ': {              name: '-์๋ผ',              rules: [                  suffixInflection('ใ
ใ
ในใ
', '', [], ['p']),              ],          }, -        { -            name: '-(์ผ)์ค-', +        '-(์ผ)์ค': { +            name: '-(์ผ)์ค',              rules: [                  suffixInflection('ใ
ใ
', 'ใทใ
', ['euo'], ['v', 'adj']),                  suffixInflection('ใ
ใ
กใ
ใ
', 'ใทใ
', ['euo'], ['v', 'adj']), @@ -3770,7 +3770,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
', '', ['euo'], ['p', 'f']),              ],          }, -        { +        '-(์ผ)์ค๋๊น': {              name: '-(์ผ)์ค๋๊น',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3784,7 +3784,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
ใดใ
ฃใฒใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)์ค๋ฆฌ์ด๊น': {              name: '-(์ผ)์ค๋ฆฌ์ด๊น',              rules: [                  suffixInflection('ใ
ใ
ในใ
ฃใ
ใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3797,7 +3797,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ในใ
ฃใ
ใ
ฃใฒใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)์ค๋ฆฌ์ด๋ค': {              name: '-(์ผ)์ค๋ฆฌ์ด๋ค',              rules: [                  suffixInflection('ใ
ใ
ในใ
ฃใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3810,7 +3810,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ในใ
ฃใ
ใ
ฃใทใ
', '', [], ['eusi']),              ],          }, -        { +        '-์ค์ด๊น': {              name: '-์ค์ด๊น',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3818,7 +3818,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ใ
ฃใฒใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)์ค์ด๋ค': {              name: '-(์ผ)์ค์ด๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj']), @@ -3832,22 +3832,22 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
ใ
ใ
ฃใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์ฌ์ต๋๋ค': {              name: '-์ฌ์ต๋๋ค',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃใ
ใ
ในใ
ใ
กใ
ใดใ
ฃใทใ
', '์๋๋ค', [], ['adj']),                  suffixInflection('ใ
ใ
ฃใ
ใ
ในใ
ใ
กใ
ใดใ
ฃใทใ
', '์ด๋ค', [], ['ida']),              ],          }, -        { +        '-์ฌ์๋ค': {              name: '-์ฌ์๋ค',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃใ
ใ
ในใ
ใ
ฃใทใ
', '์๋๋ค', [], ['adj']),                  suffixInflection('ใ
ใ
ฃใ
ใ
ในใ
ใ
ฃใทใ
', '์ด๋ค', [], ['ida']),              ],          }, -        { -            name: '-(์ผ)์ต-', +        '-(์ผ)์ต': { +            name: '-(์ผ)์ต',              rules: [                  suffixInflection('ใ
ใ
ใ
', 'ใทใ
', ['euob'], ['v', 'adj', 'ida']),                  suffixInflection('ใ
ใ
กใ
ใ
ใ
', 'ใทใ
', ['euob'], ['v', 'adj']), @@ -3860,7 +3860,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
ใ
', '', ['euob'], ['p', 'f']),              ],          }, -        { +        '-(์ผ)์ต๋๊น': {              name: '-(์ผ)์ต๋๊น',              rules: [                  suffixInflection('ใ
ใ
ใ
ใดใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3874,7 +3874,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
ใ
ใดใ
ฃใฒใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)์ต๋๋ค': {              name: '-(์ผ)์ต๋๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ใดใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3888,7 +3888,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
ใ
ใดใ
ฃใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)์ต๋๊น': {              name: '-(์ผ)์ต๋๊น',              rules: [                  suffixInflection('ใ
ใ
ใ
ใทใ
ฃใฒใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3902,7 +3902,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
ใ
ใทใ
ฃใฒใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)์ต๋๋ค': {              name: '-(์ผ)์ต๋๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ใทใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3916,7 +3916,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
ใ
ใทใ
ฃใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)์ต์์': {              name: '-(์ผ)์ต์์',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3930,7 +3930,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
ใ
ใ
ใ
ใ
ใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)์': {              name: '-(์ผ)์',              rules: [                  suffixInflection('ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3944,7 +3944,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
ใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)์ธ๋ค': {              name: '-(์ผ)์ธ๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3958,14 +3958,14 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
ใ
ฃใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์': {              name: '-์',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃใ
ใ
', '์๋๋ค', [], ['ida']),                  suffixInflection('ใ
ใ
', 'ใทใ
', [], ['ida']),              ],          }, -        { +        '-(์ผ)์ฐ': {              name: '-(์ผ)์ฐ',              rules: [                  suffixInflection('ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -3979,7 +3979,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)์ด': {              name: '-(์ผ)์ด',              rules: [                  suffixInflection('ใ
ใ
ฃ', 'ใทใ
', [], ['adj']), @@ -3988,7 +3988,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ฃ', 'ใทใ
', [], ['adj']),              ],          }, -        { +        '-(์ผ)ใด๋ค': {              name: '-(์ผ)ใด๋ค',              rules: [                  suffixInflection('ใดใทใ
กใน', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4001,7 +4001,7 @@ export const koreanTransforms = {                  suffixInflection('ใดใทใ
กใน', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)ใด์ฆ': {              name: '-(์ผ)ใด์ฆ',              rules: [                  suffixInflection('ใดใ
ใ
กใฑ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4015,7 +4015,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใดใ
ใ
กใฑ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใด์ฆ์จ': {              name: '-(์ผ)ใด์ฆ์จ',              rules: [                  suffixInflection('ใดใ
ใ
กใฑใ
ใ
กใด', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4029,7 +4029,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใดใ
ใ
กใฑใ
ใ
กใด', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๊น': {              name: '-(์ผ)ใน๊น',              rules: [                  suffixInflection('ในใฒใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4043,7 +4043,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใฒใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๊น์ผ': {              name: '-(์ผ)ใน๊น์ผ',              rules: [                  suffixInflection('ในใฒใ
ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4057,7 +4057,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใฒใ
ใ
ใ
ใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๊ผฌ': {              name: '-(์ผ)ใน๊ผฌ',              rules: [                  suffixInflection('ในใฒใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4071,7 +4071,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใฒใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๋์ง': {              name: '-(์ผ)ใน๋์ง',              rules: [                  suffixInflection('ในใดใ
กใดใ
ใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4085,7 +4085,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใดใ
กใดใ
ใ
ฃ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๋ฐ๋ผ๋': {              name: '-(์ผ)ใน๋ฐ๋ผ๋',              rules: [                  suffixInflection('ในใทใ
ในใ
ใดใ
ฃ', 'ใทใ
', [], ['adj']), @@ -4098,7 +4098,7 @@ export const koreanTransforms = {                  suffixInflection('ในใทใ
ในใ
ใดใ
ฃ', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)ใน๋ผ': {              name: '-(์ผ)ใน๋ผ',              rules: [                  suffixInflection('ในในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4112,7 +4112,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในในใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๋ผ๊ณ ': {              name: '-(์ผ)ใน๋ผ๊ณ ',              rules: [                  suffixInflection('ในในใ
ใฑใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4126,7 +4126,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในในใ
ใฑใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๋ผ์น๋ฉด': {              name: '-(์ผ)ใน๋ผ์น๋ฉด',              rules: [                  suffixInflection('ในในใ
ใ
ใ
ฃใ
ใ
ใด', 'ใทใ
', [], ['v']), @@ -4138,7 +4138,7 @@ export const koreanTransforms = {                  suffixInflection('ในในใ
ใ
ใ
ฃใ
ใ
ใด', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)ใน๋ฝ': {              name: '-(์ผ)ใน๋ฝ',              rules: [                  suffixInflection('ในในใ
ใฑ ใ
ใ
ในในใ
ใฑ', 'ใทใ
', [], ['v']), @@ -4151,7 +4151,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในในใ
ใฑ ใ
ใ
ในในใ
ใฑ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๋': {              name: '-(์ผ)ใน๋',              rules: [                  suffixInflection('ในในใ
', 'ใทใ
', [], ['v']), @@ -4163,7 +4163,7 @@ export const koreanTransforms = {                  suffixInflection('ในในใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)ใน๋ฌ๋': {              name: '-(์ผ)ใน๋ฌ๋',              rules: [                  suffixInflection('ในในใ
ใดใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4177,7 +4177,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในในใ
ใดใ
ฃ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๋ฌ๋ผ': {              name: '-(์ผ)ใน๋ฌ๋ผ',              rules: [                  suffixInflection('ในในใ
ในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4191,7 +4191,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในในใ
ในใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๋ฐ๊ฐ': {              name: '-(์ผ)ใน๋ฐ๊ฐ',              rules: [                  suffixInflection('ในในใ
ใดใฑใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4205,7 +4205,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในในใ
ใดใฑใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๋ฐ๊ณ ': {              name: '-(์ผ)ใน๋ฐ๊ณ ',              rules: [                  suffixInflection('ในในใ
ใดใฑใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4219,7 +4219,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในในใ
ใดใฑใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๋ฐ์ง': {              name: '-(์ผ)ใน๋ฐ์ง',              rules: [                  suffixInflection('ในในใ
ใดใ
ใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4233,7 +4233,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในในใ
ใดใ
ใ
ฃ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๋ ': {              name: '-(์ผ)ใน๋ ',              rules: [                  suffixInflection('ในในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4247,7 +4247,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในในใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๋ ๋ผ': {              name: '-(์ผ)ใน๋ ๋ผ',              rules: [                  suffixInflection('ในในใ
ในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4261,7 +4261,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในในใ
ในใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๋ ค๊ณ ': {              name: '-(์ผ)ใน๋ ค๊ณ ',              rules: [                  suffixInflection('ในในใ
ใฑใ
', 'ใทใ
', [], ['v']), @@ -4273,7 +4273,7 @@ export const koreanTransforms = {                  suffixInflection('ในในใ
ใฑใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)ใน๋ง์ ': {              name: '-(์ผ)ใน๋ง์ ',              rules: [                  suffixInflection('ในใ
ใ
ใ
ใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4287,7 +4287,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ใ
ใ
ใ
ใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๋ฐ์': {              name: '-(์ผ)ใน๋ฐ์',              rules: [                  suffixInflection('ในใ
ใ
ใฒใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4301,7 +4301,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ใฒใ
ใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน๋ฟ๋๋ฌ': {              name: '-(์ผ)ใน๋ฟ๋๋ฌ',              rules: [                  suffixInflection('ในใ
ใ
ใดใทใ
ในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4315,7 +4315,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ใดใทใ
ในใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ฌ': {              name: '-(์ผ)ใน์ฌ',              rules: [                  suffixInflection('ในใ
ใ
', 'ใทใ
', [], ['adj']), @@ -4327,7 +4327,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กในใ
ใ
', 'ใทใทใ
', [], ['adj']),              ],          }, -        { +        '-(์ผ)ใน์': {              name: '-(์ผ)ใน์',              rules: [                  suffixInflection('ในใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4341,7 +4341,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ธ': {              name: '-(์ผ)ใน์ธ',              rules: [                  suffixInflection('ในใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4355,7 +4355,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ธ๋ผ': {              name: '-(์ผ)ใน์ธ๋ผ',              rules: [                  suffixInflection('ในใ
ใ
ในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4369,7 +4369,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ในใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ธ๋ง์ด์ง': {              name: '-(์ผ)ใน์ธ๋ง์ด์ง',              rules: [                  suffixInflection('ในใ
ใ
ใ
ใ
ในใ
ใ
ฃใ
ใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4383,7 +4383,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ใ
ใ
ในใ
ใ
ฃใ
ใ
ฃ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์๋': {              name: '-(์ผ)ใน์๋',              rules: [                  suffixInflection('ในใ
ใ
ใดใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4397,7 +4397,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ใดใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์๊ฐ': {              name: '-(์ผ)ใน์๊ฐ',              rules: [                  suffixInflection('ในใ
ใ
ใดใฑใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4411,7 +4411,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ใดใฑใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์๋ก': {              name: '-(์ผ)ใน์๋ก',              rules: [                  suffixInflection('ในใ
ใ
ในใ
ใฑ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4425,7 +4425,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ในใ
ใฑ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์': {              name: '-(์ผ)ใน์',              rules: [                  suffixInflection('ในใ
ใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4439,7 +4439,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์๊ณ ': {              name: '-(์ผ)ใน์๊ณ ',              rules: [                  suffixInflection('ในใ
ใ
ฃใฑใ
', 'ใทใ
', [], ['adj', 'ida']), @@ -4453,7 +4453,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃใฑใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ธ๋ก': {              name: '-(์ผ)ใน์ธ๋ก',              rules: [                  suffixInflection('ในใ
ใ
ในใ
ใฑ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4467,7 +4467,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ในใ
ใฑ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์๋': {              name: '-(์ผ)ใน์๋',              rules: [                  suffixInflection('ในใ
ใ
ใดใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4481,7 +4481,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ใดใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์๊ฐ': {              name: '-(์ผ)ใน์๊ฐ',              rules: [                  suffixInflection('ในใ
ใ
ใดใฑใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4495,7 +4495,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ใดใฑใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ด๋งํผ': {              name: '-(์ผ)ใน์ด๋งํผ',              rules: [                  suffixInflection('ในใ
ใ
ฃใ
ใ
ใดใ
ใ
กใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4509,7 +4509,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃใ
ใ
ใดใ
ใ
กใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์์๋ฉด': {              name: '-(์ผ)ใน์์๋ฉด',              rules: [                  suffixInflection('ในใ
ใ
ใฑใ
ใ
ฃใ
ใ
ใด', 'ใทใ
', [], ['v']), @@ -4521,7 +4521,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ใฑใ
ใ
ฃใ
ใ
ใด', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)ใน์ง': {              name: '-(์ผ)ใน์ง',              rules: [                  suffixInflection('ในใ
ใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4535,7 +4535,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ง๋': {              name: '-(์ผ)ใน์ง๋',              rules: [                  suffixInflection('ในใ
ใ
ฃใดใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4549,7 +4549,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃใดใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ง๋': {              name: '-(์ผ)ใน์ง๋',              rules: [                  suffixInflection('ในใ
ใ
ฃใดใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4563,7 +4563,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃใดใ
ฃ', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ง๋๋ผ': {              name: '-(์ผ)ใน์ง๋๋ผ',              rules: [                  suffixInflection('ในใ
ใ
ฃใดใ
ฃในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4577,7 +4577,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃใดใ
ฃในใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ง๋ผ': {              name: '-(์ผ)ใน์ง๋ผ',              rules: [                  suffixInflection('ในใ
ใ
ฃในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4591,7 +4591,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃในใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ง๋ผ๋': {              name: '-(์ผ)ใน์ง๋ผ๋',              rules: [                  suffixInflection('ในใ
ใ
ฃในใ
ใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4605,7 +4605,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃในใ
ใทใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ง๋ก๋ค': {              name: '-(์ผ)ใน์ง๋ก๋ค',              rules: [                  suffixInflection('ในใ
ใ
ฃในใ
ใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4619,7 +4619,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃในใ
ใทใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ง๋ฉฐ': {              name: '-(์ผ)ใน์ง๋ฉฐ',              rules: [                  suffixInflection('ในใ
ใ
ฃใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4633,7 +4633,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃใ
ใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ง์ด๋ค': {              name: '-(์ผ)ใน์ง์ด๋ค',              rules: [                  suffixInflection('ในใ
ใ
ฃใ
ใ
ใทใ
', 'ใทใ
', [], ['v']), @@ -4645,7 +4645,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
ฃใ
ใ
ใทใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)ใน์ง์ธ์ ': {              name: '-(์ผ)ใน์ง์ธ์ ',              rules: [                  suffixInflection('ในใ
ใ
ฃใ
ใ
ใดใ
ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4659,7 +4659,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃใ
ใ
ใดใ
ใ
ใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ง๋': {              name: '-(์ผ)ใน์ง๋',              rules: [                  suffixInflection('ในใ
ใ
ฃใดใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4673,7 +4673,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃใดใทใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ง๋๋': {              name: '-(์ผ)ใน์ง๋๋',              rules: [                  suffixInflection('ในใ
ใ
ฃใดใทใ
ใดใ
กใด', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4687,7 +4687,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃใดใทใ
ใดใ
กใด', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ง๋': {              name: '-(์ผ)ใน์ง๋',              rules: [                  suffixInflection('ในใ
ใ
ฃใดใทใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4701,7 +4701,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃใดใทใ
ใด', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใน์ง์ ': {              name: '-(์ผ)ใน์ง์ ',              rules: [                  suffixInflection('ในใ
ใ
ฃใดใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4715,7 +4715,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กในใ
ใ
ฃใดใ
ใ
', '', [], ['p']),              ],          }, -        { +        '-(์ผ)ใ
': {              name: '-(์ผ)ใ
',              rules: [                  suffixInflection('ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4729,7 +4729,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)ใ
์ธ': {              name: '-(์ผ)ใ
์ธ',              rules: [                  suffixInflection('ใ
ใ
ใ
', 'ใทใ
', [], ['v']), @@ -4740,7 +4740,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
ใ
', 'ใทใทใ
', [], ['v']),              ],          }, -        { +        '-(์ผ)ใ
๋': {              name: '-(์ผ)ใ
๋',              rules: [                  suffixInflection('ใ
ใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4754,7 +4754,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)ใ
์๋ด': {              name: '-(์ผ)ใ
์๋ด',              rules: [                  suffixInflection('ใ
ใ
ใ
ในใ
', 'ใทใ
', [], ['v', 'adj', 'ida']), @@ -4768,7 +4768,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
กใ
ใ
ใ
ในใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-(์ผ)ใ
์ผ': {              name: '-(์ผ)ใ
์ผ',              rules: [                  suffixInflection('ใ
ใ
ใ
', 'ใทใ
', [], ['v']), @@ -4779,7 +4779,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
ใ
', 'ใทใทใ
', [], ['v']),              ],          }, -        { +        '-(์ผ)ใ
์๋ค 1': {              name: '-(์ผ)ใ
์๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ฃใทใ
', 'ใทใ
', [], ['v']), @@ -4790,7 +4790,7 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
ใ
ฃใทใ
', 'ใทใทใ
', [], ['v']),              ],          }, -        { +        '-(์ผ)ใ
์๋ค 2': {              name: '-(์ผ)ใ
์๋ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ฃใ
ใ
', 'ใทใ
', [], ['v']), @@ -4802,7 +4802,7 @@ export const koreanTransforms = {                  suffixInflection('ใ
ใ
ใ
ฃใ
ใ
', '', [], ['eusi']),              ],          }, -        { +        '-(์ผ)ใ
์์ค': {              name: '-(์ผ)ใ
์์ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ฃใ
ใ
', 'ใทใ
', [], ['v']), @@ -4813,132 +4813,132 @@ export const koreanTransforms = {                  suffixInflection('ในใ
ใ
กใ
ใ
ใ
ฃใ
ใ
', 'ใทใทใ
', [], ['v']),              ],          }, -        { +        '-์': {              name: '-์',              rules: [                  suffixInflection('ใ
ใ
', 'ใทใ
', [], ['v', 'ida']),              ],          }, -        { +        '-์๊ณ ': {              name: '-์๊ณ ',              rules: [                  suffixInflection('ใ
ใ
ใฑใ
', 'ใทใ
', [], ['v']),              ],          }, -        { +        '-์๊ตฌ': {              name: '-์๊ตฌ',              rules: [                  suffixInflection('ใ
ใ
ใฑใ
', 'ใทใ
', [], ['v']),              ],          }, -        { +        '-์๊พธ๋': {              name: '-์๊พธ๋',              rules: [                  suffixInflection('ใ
ใ
ใฒใ
ใดใ
', 'ใทใ
', [], ['v']),              ],          }, -        { +        '-์๋๋': {              name: '-์๋๋',              rules: [                  suffixInflection('ใ
ใ
ใดใ
กใดใ
ฃ', 'ใทใ
', [], ['v']),              ],          }, -        { +        '-์๋๊น': {              name: '-์๋๊น',              rules: [                  suffixInflection('ใ
ใ
ใดใ
ฃใฒใ
', 'ใทใ
', [], ['v']),              ],          }, -        { +        '-์๋ง์': {              name: '-์๋ง์',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใ
', 'ใทใ
', [], ['v']),                  suffixInflection('ใ
ใ
ใ
ใ
ใ
ใ
', '', [], ['eusi']),              ],          }, -        { +        '-์๋ฉฐ': {              name: '-์๋ฉฐ',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
', 'ใทใ
', [], ['v']),              ],          }, -        { +        '-์๋ฉด': {              name: '-์๋ฉด',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใด', 'ใทใ
', [], ['v']),              ],          }, -        { +        '-์๋ฉด์': {              name: '-์๋ฉด์',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใดใ
ใ
', 'ใทใ
', [], ['v']),              ],          }, -        { +        '-์์': {              name: '-์์',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใด', 'ใทใ
', [], ['v']),              ],          }, -        { -            name: '-์์ค-', +        '-์์ค': { +            name: '-์์ค',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
', 'ใทใ
', ['jao'], ['v']),              ],          }, -        { -            name: '-์์ต-', +        '-์์ต': { +            name: '-์์ต',              rules: [                  suffixInflection('ใ
ใ
ใ
ใ
ใ
', 'ใทใ
', ['jaob'], ['v']),              ],          }, -        { -            name: '-์ก-', +        '-์ก': { +            name: '-์ก',              rules: [                  suffixInflection('ใ
ใ
ใ
', 'ใทใ
', ['jab'], ['v']),              ],          }, -        { +        '-์ฃ ': {              name: '-์ฃ ',              rules: [                  suffixInflection('ใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใ
ใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-์ง': {              name: '-์ง',              rules: [                  suffixInflection('ใ
ใ
ฃ', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใ
ใ
ฃ', '', [], ['p', 'f', 'eusi']),              ],          }, -        { +        '-์ง๋ง๋': {              name: '-์ง๋ง๋',              rules: [                  suffixInflection('ใ
ใ
ฃใ
ใ
ใดใ
กใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใ
ใ
ฃใ
ใ
ใดใ
กใด', '', [], ['p', 'f']),              ],          }, -        { +        '-์ง๋ง': {              name: '-์ง๋ง',              rules: [                  suffixInflection('ใ
ใ
ฃใ
ใ
ใด', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใ
ใ
ฃใ
ใ
ใด', '', [], ['p', 'f', 'euo', 'euob']),              ],          }, -        { +        '-์ง๋ง์๋': {              name: '-์ง๋ง์๋',              rules: [                  suffixInflection('ใ
ใ
ฃใ
ใ
ใดใ
ใ
ใทใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใ
ใ
ฃใ
ใ
ใดใ
ใ
ใทใ
', '', [], ['p', 'f']),              ],          }, -        { +        '-์ง์': {              name: '-์ง์',              rules: [                  suffixInflection('ใ
ใ
ฃใ
ใ
', 'ใทใ
', [], ['v', 'adj', 'ida']),                  suffixInflection('ใ
ใ
ฃใ
ใ
', '', [], ['p', 'f', 'eusi']),              ],          }, -    ], +    },  }; diff --git a/ext/js/language/la/latin-transforms.js b/ext/js/language/la/latin-transforms.js index 559420d5..60a99f44 100644 --- a/ext/js/language/la/latin-transforms.js +++ b/ext/js/language/la/latin-transforms.js @@ -125,8 +125,8 @@ export const latinTransforms = {              isDictionaryForm: true,          },      }, -    transforms: [ -        { +    transforms: { +        plural: {              name: 'plural',              description: 'Plural declension',              rules: [ @@ -137,26 +137,26 @@ export const latinTransforms = {                  suffixInflection('a', 'um', ['adj12'], ['adj12']),              ],          }, -        { +        feminine: {              name: 'feminine',              description: 'Adjective form',              rules: [                  suffixInflection('a', 'us', ['adj12'], ['adj12']),              ],          }, -        { +        neuter: {              name: 'neuter',              description: 'Adjective form',              rules: [                  suffixInflection('um', 'us', ['adj12'], ['adj12']),              ],          }, -        { +        ablative: {              name: 'ablative',              description: 'Ablative case',              rules: [                  suffixInflection('o', 'um', ['n2s'], ['n2s']),              ],          }, -    ], +    },  }; diff --git a/ext/js/language/language-transformer.js b/ext/js/language/language-transformer.js index 76a1b583..d80fa73c 100644 --- a/ext/js/language/language-transformer.js +++ b/ext/js/language/language-transformer.js @@ -50,16 +50,17 @@ export class LanguageTransformer {          /** @type {import('language-transformer-internal').Transform[]} */          const transforms2 = []; -        for (let i = 0, ii = transforms.length; i < ii; ++i) { -            const {name, rules} = transforms[i]; + +        for (const [transformId, transform] of Object.entries(transforms)) { +            const {name, description, rules} = transform;              /** @type {import('language-transformer-internal').Rule[]} */              const rules2 = [];              for (let j = 0, jj = rules.length; j < jj; ++j) {                  const {type, isInflected, deinflect, conditionsIn, conditionsOut} = rules[j];                  const conditionFlagsIn = this._getConditionFlagsStrict(conditionFlagsMap, conditionsIn); -                if (conditionFlagsIn === null) { throw new Error(`Invalid conditionsIn for transform[${i}].rules[${j}]`); } +                if (conditionFlagsIn === null) { throw new Error(`Invalid conditionsIn for transform ${transformId}.rules[${j}]`); }                  const conditionFlagsOut = this._getConditionFlagsStrict(conditionFlagsMap, conditionsOut); -                if (conditionFlagsOut === null) { throw new Error(`Invalid conditionsOut for transform[${i}].rules[${j}]`); } +                if (conditionFlagsOut === null) { throw new Error(`Invalid conditionsOut for transform ${transformId}.rules[${j}]`); }                  rules2.push({                      type,                      isInflected, @@ -70,7 +71,7 @@ export class LanguageTransformer {              }              const isInflectedTests = rules.map((rule) => rule.isInflected);              const heuristic = new RegExp(isInflectedTests.map((regExp) => regExp.source).join('|')); -            transforms2.push({name, rules: rules2, heuristic}); +            transforms2.push({id: transformId, name, description, rules: rules2, heuristic});          }          this._nextFlagIndex = nextFlagIndex; @@ -123,14 +124,14 @@ export class LanguageTransformer {              for (const transform of this._transforms) {                  if (!transform.heuristic.test(text)) { continue; } -                const {name, rules} = transform; +                const {id, rules} = transform;                  for (let j = 0, jj = rules.length; j < jj; ++j) {                      const rule = rules[j];                      if (!LanguageTransformer.conditionsMatch(conditions, rule.conditionsIn)) { continue; }                      const {isInflected, deinflect} = rule;                      if (!isInflected.test(text)) { continue; } -                    const isCycle = trace.some((frame) => frame.transform === name && frame.ruleIndex === j && frame.text === text); +                    const isCycle = trace.some((frame) => frame.transform === id && frame.ruleIndex === j && frame.text === text);                      if (isCycle) {                          log.warn(new Error(`Cycle detected in transform[${name}] rule[${j}] for text: ${text}\nTrace: ${JSON.stringify(trace)}`));                          continue; @@ -139,7 +140,7 @@ export class LanguageTransformer {                      results.push(LanguageTransformer.createTransformedText(                          deinflect(text),                          rule.conditionsOut, -                        this._extendTrace(trace, {transform: name, ruleIndex: j, text}), +                        this._extendTrace(trace, {transform: id, ruleIndex: j, text}),                      ));                  }              } @@ -148,6 +149,19 @@ export class LanguageTransformer {      }      /** +     * @param {string[]} inflectionRules +     * @returns {import('dictionary').InflectionRuleChain} +     */ +    getUserFacingInflectionRules(inflectionRules) { +        return inflectionRules.map((rule) => { +            const fullRule = this._transforms.find((transform) => transform.id === rule); +            if (typeof fullRule === 'undefined') { return {name: rule}; } +            const {name, description} = fullRule; +            return description ? {name, description} : {name}; +        }); +    } + +    /**       * @param {string} text       * @param {number} conditions       * @param {import('language-transformer-internal').Trace} trace diff --git a/ext/js/language/multi-language-transformer.js b/ext/js/language/multi-language-transformer.js index 4e85aa65..fec682a3 100644 --- a/ext/js/language/multi-language-transformer.js +++ b/ext/js/language/multi-language-transformer.js @@ -74,4 +74,17 @@ export class MultiLanguageTransformer {          if (typeof languageTransformer === 'undefined') { return [LanguageTransformer.createTransformedText(sourceText, 0, [])]; }          return languageTransformer.transform(sourceText);      } + +    /** +     * @param {string} language +     * @param {string[]} inflectionRules +     * @returns {import('dictionary').InflectionRuleChain} +     */ +    getUserFacingInflectionRules(language, inflectionRules) { +        const languageTransformer = this._languageTransformers.get(language); +        if (typeof languageTransformer === 'undefined') { +            return inflectionRules.map((rule) => ({name: rule})); +        } +        return languageTransformer.getUserFacingInflectionRules(inflectionRules); +    }  } diff --git a/ext/js/language/sga/old-irish-transforms.js b/ext/js/language/sga/old-irish-transforms.js index d444af1f..793c39a8 100644 --- a/ext/js/language/sga/old-irish-transforms.js +++ b/ext/js/language/sga/old-irish-transforms.js @@ -15,7 +15,7 @@   * along with this program.  If not, see <https://www.gnu.org/licenses/>.   */ -import {suffixInflection, prefixInflection} from '../language-transforms.js'; +import {prefixInflection, suffixInflection} from '../language-transforms.js';  /**   * @param {boolean} notBeginning @@ -40,36 +40,36 @@ function tryAlternateOrthography(notBeginning, originalOrthography, alternateOrt  export const oldIrishTransforms = {      language: 'sga',      conditions: {}, -    transforms: [ -        { +    transforms: { +        'nd for nn': {              name: 'nd for nn',              description: 'nd for nn',              rules: [                  suffixInflection('nd', 'nn', [], []),              ],          }, -        { +        'cg for c': {              name: 'cg for c',              description: 'cg for c',              rules: [                  tryAlternateOrthography(false, 'cg', 'c', [], []),              ],          }, -        { +        'td for t': {              name: 'td for t',              description: 'td for t',              rules: [                  tryAlternateOrthography(false, 'td', 't', [], []),              ],          }, -        { +        'pb for p': {              name: 'pb for p',              description: 'pb for p',              rules: [                  tryAlternateOrthography(false, 'pb', 'p', [], []),              ],          }, -        { +        'วฝ/รฆ for รฉ': {              name: 'วฝ/รฆ for รฉ',              description: 'วฝ/รฆ for รฉ',              rules: [ @@ -77,7 +77,7 @@ export const oldIrishTransforms = {                  tryAlternateOrthography(false, 'รฆ', 'รฉ', [], []),              ],          }, -        { +        'doubled vowel': {              name: 'doubled vowel',              description: 'Doubled Vowel',              rules: [ @@ -88,7 +88,7 @@ export const oldIrishTransforms = {                  tryAlternateOrthography(true, 'uu', 'รบ', [], []),              ],          }, -        { +        'doubled consonant': {              name: 'doubled consonant',              description: 'Doubled Consonant',              rules: [ @@ -105,7 +105,7 @@ export const oldIrishTransforms = {                  tryAlternateOrthography(true, 'ss', 's', [], []),              ],          }, -        { +        'lenited': {              name: 'lenited',              description: 'Non-Beginning Lenition',              rules: [ @@ -114,7 +114,7 @@ export const oldIrishTransforms = {                  tryAlternateOrthography(true, 'th', 't', [], []),              ],          }, -        { +        'lenited (Middle Irish)': {              name: 'lenited (Middle Irish)',              description: 'Non-Beginning Lenition (Middle Irish)',              rules: [ @@ -123,7 +123,7 @@ export const oldIrishTransforms = {                  tryAlternateOrthography(true, 'dh', 'd', [], []),              ],          }, -        { +        '[IM] nasalized': {              name: '[IM] nasalized',              description: 'Nasalized Word',              rules: [ @@ -134,7 +134,7 @@ export const oldIrishTransforms = {                  prefixInflection('m-', '', [], []),              ],          }, -        { +        '[IM] nasalized (Middle Irish)': {              name: '[IM] nasalized (Middle Irish)',              description: 'Nasalized Word (Middle Irish)',              rules: [ @@ -143,7 +143,7 @@ export const oldIrishTransforms = {                  prefixInflection('dt', 'd', [], []),              ],          }, -        { +        '[IM] lenited': {              name: '[IM] lenited',              description: 'Lenited Word',              rules: [ @@ -152,7 +152,7 @@ export const oldIrishTransforms = {                  prefixInflection('th', 't', [], []),              ],          }, -        { +        '[IM] lenited (Middle Irish)': {              name: '[IM] lenited (Middle Irish)',              description: 'Lenited Word (Middle Irish)',              rules: [ @@ -161,7 +161,7 @@ export const oldIrishTransforms = {                  prefixInflection('dh', 'd', [], []),              ],          }, -        { +        '[IM] aspirated': {              name: '[IM] aspirated',              description: 'Aspirated Word',              rules: [ @@ -173,7 +173,7 @@ export const oldIrishTransforms = {                  prefixInflection('h-', '', [], []),              ],          }, -        { +        '[IM] geminated': {              name: '[IM] geminated',              description: 'Geminated Word',              rules: [ @@ -201,5 +201,5 @@ export const oldIrishTransforms = {                  prefixInflection('s-s', 's', [], []),              ],          }, -    ], +    },  }; diff --git a/ext/js/language/sq/albanian-transforms.js b/ext/js/language/sq/albanian-transforms.js index 37657f49..0c6625c6 100644 --- a/ext/js/language/sq/albanian-transforms.js +++ b/ext/js/language/sq/albanian-transforms.js @@ -62,9 +62,9 @@ export const albanianTransforms = {              isDictionaryForm: true,          },      }, -    transforms: [ +    transforms: {          // Nouns -        { +        'definite': {              name: 'definite',              description: 'Definite form of a noun',              rules: [ @@ -85,14 +85,14 @@ export const albanianTransforms = {                  suffixInflection('ja', 'e', [], ['n']),              ],          }, -        { +        'singular definite accusative': {              name: 'singular definite accusative',              description: 'Singular definite accusative form of a noun',              rules: [                  suffixInflection('n', '', [], ['n']),              ],          }, -        { +        'plural': {              name: 'plural',              description: 'Plural form of a noun',              rules: [ @@ -101,7 +101,7 @@ export const albanianTransforms = {              ],          },          // Verbs -        { +        'present indicative second-person singular': {              name: 'present indicative second-person singular',              description: 'Present indicative second-person singular form of a verb',              rules: [ @@ -111,7 +111,7 @@ export const albanianTransforms = {                  suffixInflection('hesh', 'hem', [], ['v']),              ],          }, -        { +        'present indicative third-person singular': {              name: 'present indicative third-person singular',              description: 'Present indicative third-person singular form of a verb',              rules: [ @@ -121,7 +121,7 @@ export const albanianTransforms = {                  suffixInflection('het', 'hem', [], ['v']),              ],          }, -        { +        'present indicative first-person plural': {              name: 'present indicative first-person plural',              description: 'Present indicative first-person plural form of a verb',              rules: [ @@ -130,7 +130,7 @@ export const albanianTransforms = {                  suffixInflection('hemi', 'hem', [], ['v']),              ],          }, -        { +        'present indicative second-person plural': {              name: 'present indicative second-person plural',              description: 'Present indicative second-person plural form of a verb',              rules: [ @@ -139,7 +139,7 @@ export const albanianTransforms = {                  suffixInflection('heni', 'hem', [], ['v']),              ],          }, -        { +        'present indicative third-person plural': {              name: 'present indicative third-person plural',              description: 'Present indicative third-person plural form of a verb',              rules: [ @@ -148,7 +148,7 @@ export const albanianTransforms = {                  suffixInflection('hen', 'hem', [], ['v']),              ],          }, -        { +        'imperfect first-person singular indicative': {              name: 'imperfect first-person singular indicative',              description: 'Imperfect first-person singular indicative form of a verb',              rules: [ @@ -157,7 +157,7 @@ export const albanianTransforms = {                  suffixInflection('hesha', 'hem', [], ['v']),              ],          }, -        { +        'imperfect second-person singular indicative': {              name: 'imperfect second-person singular indicative',              description: 'Imperfect second-person singular indicative form of a verb',              rules: [ @@ -166,7 +166,7 @@ export const albanianTransforms = {                  suffixInflection('heshe', 'hem', [], ['v']),              ],          }, -        { +        'imperfect third-person singular indicative': {              name: 'imperfect third-person singular indicative',              description: 'Imperfect third-person singular indicative form of a verb',              rules: [ @@ -175,7 +175,7 @@ export const albanianTransforms = {                  suffixInflection('hej', 'hem', [], ['v']),              ],          }, -        { +        'imperfect first-person plural indicative': {              name: 'imperfect first-person plural indicative',              description: 'Imperfect first-person plural indicative form of a verb',              rules: [ @@ -184,7 +184,7 @@ export const albanianTransforms = {                  suffixInflection('heshim', 'hem', [], ['v']),              ],          }, -        { +        'imperfect second-person plural indicative': {              name: 'imperfect second-person plural indicative',              description: 'Imperfect second-person plural indicative form of a verb',              rules: [ @@ -193,7 +193,7 @@ export const albanianTransforms = {                  suffixInflection('heshit', 'hem', [], ['v']),              ],          }, -        { +        'imperfect third-person plural indicative': {              name: 'imperfect third-person plural indicative',              description: 'Imperfect third-person plural indicative form of a verb',              rules: [ @@ -202,7 +202,7 @@ export const albanianTransforms = {                  suffixInflection('heshin', 'hem', [], ['v']),              ],          }, -        { +        'aorist first-person singular indicative': {              name: 'aorist first-person singular indicative',              description: 'Aorist first-person singular indicative form of a verb',              rules: [ @@ -211,7 +211,7 @@ export const albanianTransforms = {                  conjugationIISuffixInflection('a', '', [], ['v']),              ],          }, -        { +        'aorist second-person singular indicative': {              name: 'aorist second-person singular indicative',              description: 'Aorist second-person singular indicative form of a verb',              rules: [ @@ -220,7 +220,7 @@ export const albanianTransforms = {                  conjugationIISuffixInflection('e', '', [], ['v']),              ],          }, -        { +        'aorist third-person singular indicative': {              name: 'aorist third-person singular indicative',              description: 'Aorist third-person singular indicative form of a verb',              rules: [ @@ -231,7 +231,7 @@ export const albanianTransforms = {                  suffixInflection('ye', 'ej', [], ['v']),              ],          }, -        { +        'aorist first-person plural indicative': {              name: 'aorist first-person plural indicative',              description: 'Aorist first-person plural indicative form of a verb',              rules: [ @@ -241,7 +241,7 @@ export const albanianTransforms = {                  conjugationIISuffixInflection('รซm', '', [], ['v']),              ],          }, -        { +        'aorist second-person plural indicative': {              name: 'aorist second-person plural indicative',              description: 'Aorist second-person plural indicative form of a verb',              rules: [ @@ -251,7 +251,7 @@ export const albanianTransforms = {                  conjugationIISuffixInflection('รซt', '', [], ['v']),              ],          }, -        { +        'aorist third-person plural indicative': {              name: 'aorist third-person plural indicative',              description: 'Aorist third-person plural indicative form of a verb',              rules: [ @@ -261,7 +261,7 @@ export const albanianTransforms = {                  conjugationIISuffixInflection('รซn', '', [], ['v']),              ],          }, -        { +        'imperative second-person singular present': {              name: 'imperative second-person singular present',              description: 'Imperative second-person singular present form of a verb',              rules: [ @@ -269,7 +269,7 @@ export const albanianTransforms = {                  suffixInflection('hu', 'hem', [], ['v']),              ],          }, -        { +        'imperative second-person plural present': {              name: 'imperative second-person plural present',              description: 'Imperative second-person plural present form of a verb',              rules: [ @@ -278,7 +278,7 @@ export const albanianTransforms = {                  suffixInflection('huni', 'hem', [], ['v']),              ],          }, -        { +        'participle': {              name: 'participle',              description: 'Participle form of a verb',              rules: [ @@ -288,7 +288,7 @@ export const albanianTransforms = {                  suffixInflection('yer', 'ej', [], ['v']),              ],          }, -        { +        'mediopassive': {              name: 'mediopassive',              description: 'Mediopassive form of a verb',              rules: [ @@ -296,49 +296,49 @@ export const albanianTransforms = {                  suffixInflection('hem', 'j', ['v'], ['v']),              ],          }, -        { +        'optative first-person singular present': {              name: 'optative first-person singular present',              description: 'Optative first-person singular present form of a verb',              rules: [                  suffixInflection('fsha', 'j', [], ['v']),              ],          }, -        { +        'optative second-person singular present': {              name: 'optative second-person singular present',              description: 'Optative second-person singular present form of a verb',              rules: [                  suffixInflection('fsh', 'j', [], ['v']),              ],          }, -        { +        'optative third-person singular present': {              name: 'optative third-person singular present',              description: 'Optative third-person singular present form of a verb',              rules: [                  suffixInflection('ftรซ', 'j', [], ['v']),              ],          }, -        { +        'optative first-person plural present': {              name: 'optative first-person plural present',              description: 'Optative first-person plural present form of a verb',              rules: [                  suffixInflection('fshim', 'j', [], ['v']),              ],          }, -        { +        'optative second-person plural present': {              name: 'optative second-person plural present',              description: 'Optative second-person plural present form of a verb',              rules: [                  suffixInflection('fshi', 'j', [], ['v']),              ],          }, -        { +        'optative third-person plural present': {              name: 'optative third-person plural present',              description: 'Optative third-person plural present form of a verb',              rules: [                  suffixInflection('fshin', 'j', [], ['v']),              ],          }, -        { +        'nominalization': {              name: 'nominalization',              description: 'Noun form of a verb',              rules: [ @@ -347,5 +347,5 @@ export const albanianTransforms = {                  suffixInflection('je', '', [], ['v']),              ],          }, -    ], +    },  }; diff --git a/ext/js/language/translator.js b/ext/js/language/translator.js index e9490346..f84328d9 100644 --- a/ext/js/language/translator.js +++ b/ext/js/language/translator.js @@ -70,16 +70,16 @@ export class Translator {       * @returns {Promise<{dictionaryEntries: import('dictionary').TermDictionaryEntry[], originalTextLength: number}>} An object containing dictionary entries and the length of the original source text.       */      async findTerms(mode, text, options) { -        const {enabledDictionaryMap, excludeDictionaryDefinitions, sortFrequencyDictionary, sortFrequencyDictionaryOrder} = options; +        const {enabledDictionaryMap, excludeDictionaryDefinitions, sortFrequencyDictionary, sortFrequencyDictionaryOrder, language} = options;          const tagAggregator = new TranslatorTagAggregator(); -        let {dictionaryEntries, originalTextLength} = await this._findTermsInternal(text, enabledDictionaryMap, options, tagAggregator); +        let {dictionaryEntries, originalTextLength} = await this._findTermsInternal(text, options, tagAggregator);          switch (mode) {              case 'group':                  dictionaryEntries = this._groupDictionaryEntriesByHeadword(dictionaryEntries, tagAggregator);                  break;              case 'merge': -                dictionaryEntries = await this._getRelatedDictionaryEntries(dictionaryEntries, options.mainDictionary, enabledDictionaryMap, tagAggregator); +                dictionaryEntries = await this._getRelatedDictionaryEntries(dictionaryEntries, options, tagAggregator);                  break;          } @@ -115,7 +115,9 @@ export class Translator {              if (pronunciations.length > 1) { this._sortTermDictionaryEntrySimpleData(pronunciations); }          } -        return {dictionaryEntries, originalTextLength}; +        const withUserFacingInflections = this._addUserFacingInflections(language, dictionaryEntries); + +        return {dictionaryEntries: withUserFacingInflections, originalTextLength};      }      /** @@ -206,23 +208,33 @@ export class Translator {      /**       * @param {string} text -     * @param {Map<string, import('translation').FindTermDictionary>} enabledDictionaryMap       * @param {import('translation').FindTermsOptions} options       * @param {TranslatorTagAggregator} tagAggregator -     * @returns {Promise<import('translator').FindTermsResult>} +     * @returns {Promise<{dictionaryEntries: import('translation-internal').TermDictionaryEntry[], originalTextLength: number}>}       */ -    async _findTermsInternal(text, enabledDictionaryMap, options, tagAggregator) { -        if (options.removeNonJapaneseCharacters) { +    async _findTermsInternal(text, options, tagAggregator) { +        const {removeNonJapaneseCharacters, enabledDictionaryMap} = options; +        if (removeNonJapaneseCharacters) {              text = this._getJapaneseOnlyText(text);          }          if (text.length === 0) {              return {dictionaryEntries: [], originalTextLength: 0};          } -        const deinflections = await this._getDeinflections(text, enabledDictionaryMap, options); +        const deinflections = await this._getDeinflections(text, options); +        return this._getDictionaryEntries(deinflections, enabledDictionaryMap, tagAggregator); +    } + +    /** +     * @param {import('translation-internal').DatabaseDeinflection[]} deinflections +     * @param {import('translation').TermEnabledDictionaryMap} enabledDictionaryMap +     * @param {TranslatorTagAggregator} tagAggregator +     * @returns {{dictionaryEntries: import('translation-internal').TermDictionaryEntry[], originalTextLength: number}} +     */ +    _getDictionaryEntries(deinflections, enabledDictionaryMap, tagAggregator) {          let originalTextLength = 0; -        /** @type {import('dictionary').TermDictionaryEntry[]} */ +        /** @type {import('translation-internal').TermDictionaryEntry[]} */          const dictionaryEntries = [];          const ids = new Set();          for (const {databaseEntries, originalText, transformedText, deinflectedText, inflectionRuleChainCandidates} of deinflections) { @@ -247,19 +259,20 @@ export class Translator {                  ids.add(id);              }          } -          return {dictionaryEntries, originalTextLength};      }      /** -     * @param {import('dictionary').TermDictionaryEntry} existingEntry -     * @param {import('dictionary').InflectionRuleChainCandidate[]} inflectionRuleChainCandidates +     * @param {import('translation-internal').TermDictionaryEntry} existingEntry +     * @param {import('translation-internal').InflectionRuleChainCandidate[]} inflectionRuleChainCandidates       */      _mergeInflectionRuleChains(existingEntry, inflectionRuleChainCandidates) {          const existingChains = existingEntry.inflectionRuleChainCandidates;          for (const {source, inflectionRules} of inflectionRuleChainCandidates) { -            const duplicate = existingChains.find((existingChain) => this._areArraysEqualIgnoreOrder(existingChain.inflectionRules, inflectionRules)); +            const duplicate = existingChains.find((existingChain) => { +                return this._areArraysEqualIgnoreOrder(existingChain.inflectionRules, inflectionRules); +            });              if (!duplicate) {                  existingEntry.inflectionRuleChainCandidates.push({source, inflectionRules});              } else if (duplicate.source !== source) { @@ -299,11 +312,10 @@ export class Translator {      /**       * @param {string} text -     * @param {Map<string, import('translation').FindTermDictionary>} enabledDictionaryMap       * @param {import('translation').FindTermsOptions} options       * @returns {Promise<import('translation-internal').DatabaseDeinflection[]>}       */ -    async _getDeinflections(text, enabledDictionaryMap, options) { +    async _getDeinflections(text, options) {          let deinflections = (              options.deinflect ?              this._getAlgorithmDeinflections(text, options) : @@ -311,7 +323,7 @@ export class Translator {          );          if (deinflections.length === 0) { return []; } -        const {matchType, language} = options; +        const {matchType, language, enabledDictionaryMap} = options;          await this._addEntriesToDeinflections(language, deinflections, enabledDictionaryMap, matchType); @@ -455,7 +467,7 @@ export class Translator {                      const {trace, conditions} = deinflection;                      const postprocessedTextVariants = this._getTextVariants(deinflection.text, textPostprocessors, [null], sourceCache);                      for (const transformedText of postprocessedTextVariants) { -                        /** @type {import('dictionary').InflectionRuleChainCandidate} */ +                        /** @type {import('translation-internal').InflectionRuleChainCandidate} */                          const inflectionRuleChainCandidate = {                              source: 'algorithm',                              inflectionRules: trace.map((frame) => frame.transform), @@ -577,7 +589,7 @@ export class Translator {       * @param {string} transformedText       * @param {string} deinflectedText       * @param {number} conditions -     * @param {import('dictionary').InflectionRuleChainCandidate[]} inflectionRuleChainCandidates +     * @param {import('translation-internal').InflectionRuleChainCandidate[]} inflectionRuleChainCandidates       * @returns {import('translation-internal').DatabaseDeinflection}       */      _createDeinflection(originalText, transformedText, deinflectedText, conditions, inflectionRuleChainCandidates) { @@ -587,20 +599,20 @@ export class Translator {      // Term dictionary entry grouping      /** -     * @param {import('dictionary').TermDictionaryEntry[]} dictionaryEntries -     * @param {string} mainDictionary -     * @param {import('translation').TermEnabledDictionaryMap} enabledDictionaryMap +     * @param {import('translation-internal').TermDictionaryEntry[]} dictionaryEntries +     * @param {import('translation').FindTermsOptions} options       * @param {TranslatorTagAggregator} tagAggregator -     * @returns {Promise<import('dictionary').TermDictionaryEntry[]>} +     * @returns {Promise<import('translation-internal').TermDictionaryEntry[]>}       */ -    async _getRelatedDictionaryEntries(dictionaryEntries, mainDictionary, enabledDictionaryMap, tagAggregator) { +    async _getRelatedDictionaryEntries(dictionaryEntries, options, tagAggregator) { +        const {mainDictionary, enabledDictionaryMap} = options;          /** @type {import('translator').SequenceQuery[]} */          const sequenceList = []; -        /** @type {import('translator').DictionaryEntryGroup[]} */ +        /** @type {import('translation-internal').DictionaryEntryGroup[]} */          const groupedDictionaryEntries = []; -        /** @type {Map<number, import('translator').DictionaryEntryGroup>} */ +        /** @type {Map<number, import('translation-internal').DictionaryEntryGroup>} */          const groupedDictionaryEntriesMap = new Map(); -        /** @type {Map<number, import('dictionary').TermDictionaryEntry>} */ +        /** @type {Map<number, import('translation-internal').TermDictionaryEntry>} */          const ungroupedDictionaryEntriesMap = new Map();          for (const dictionaryEntry of dictionaryEntries) {              const {definitions: [{id, dictionary, sequences: [sequence]}]} = dictionaryEntry; @@ -642,8 +654,8 @@ export class Translator {      }      /** -     * @param {import('translator').DictionaryEntryGroup[]} groupedDictionaryEntries -     * @param {Map<number, import('dictionary').TermDictionaryEntry>} ungroupedDictionaryEntriesMap +     * @param {import('translation-internal').DictionaryEntryGroup[]} groupedDictionaryEntries +     * @param {Map<number, import('translation-internal').TermDictionaryEntry>} ungroupedDictionaryEntriesMap       * @param {import('translator').SequenceQuery[]} sequenceList       * @param {import('translation').TermEnabledDictionaryMap} enabledDictionaryMap       * @param {TranslatorTagAggregator} tagAggregator @@ -664,8 +676,8 @@ export class Translator {      }      /** -     * @param {import('translator').DictionaryEntryGroup[]} groupedDictionaryEntries -     * @param {Map<number, import('dictionary').TermDictionaryEntry>} ungroupedDictionaryEntriesMap +     * @param {import('translation-internal').DictionaryEntryGroup[]} groupedDictionaryEntries +     * @param {Map<number, import('translation-internal').TermDictionaryEntry>} ungroupedDictionaryEntriesMap       * @param {import('translation').TermEnabledDictionaryMap} enabledDictionaryMap       * @param {import('translation').TermEnabledDictionaryMap} secondarySearchDictionaryMap       * @param {TranslatorTagAggregator} tagAggregator @@ -675,7 +687,7 @@ export class Translator {          /** @type {import('dictionary-database').TermExactRequest[]} */          const termList = [];          const targetList = []; -        /** @type {Map<string, {groups: import('translator').DictionaryEntryGroup[]}>} */ +        /** @type {Map<string, {groups: import('translation-internal').DictionaryEntryGroup[]}>} */          const targetMap = new Map();          for (const group of groupedDictionaryEntries) { @@ -733,12 +745,12 @@ export class Translator {      }      /** -     * @param {Iterable<import('dictionary').TermDictionaryEntry>} dictionaryEntries +     * @param {Iterable<import('translation-internal').TermDictionaryEntry>} dictionaryEntries       * @param {TranslatorTagAggregator} tagAggregator -     * @returns {import('dictionary').TermDictionaryEntry[]} +     * @returns {import('translation-internal').TermDictionaryEntry[]}       */      _groupDictionaryEntriesByHeadword(dictionaryEntries, tagAggregator) { -        /** @type {Map<string, import('dictionary').TermDictionaryEntry[]>} */ +        /** @type {Map<string, import('translation-internal').TermDictionaryEntry[]>} */          const groups = new Map();          for (const dictionaryEntry of dictionaryEntries) {              const {inflectionRuleChainCandidates, headwords: [{term, reading}]} = dictionaryEntry; @@ -761,7 +773,7 @@ export class Translator {      // Removing data      /** -     * @param {import('dictionary').TermDictionaryEntry[]} dictionaryEntries +     * @param {import('translation-internal').TermDictionaryEntry[]} dictionaryEntries       * @param {Set<string>} excludeDictionaryDefinitions       */      _removeExcludedDefinitions(dictionaryEntries, excludeDictionaryDefinitions) { @@ -785,7 +797,7 @@ export class Translator {      }      /** -     * @param {import('dictionary').TermDictionaryEntry} dictionaryEntry +     * @param {import('translation-internal').TermDictionaryEntry} dictionaryEntry       */      _removeUnusedHeadwords(dictionaryEntry) {          const {definitions, pronunciations, frequencies, headwords} = dictionaryEntry; @@ -1071,7 +1083,7 @@ export class Translator {      // Metadata      /** -     * @param {import('dictionary').TermDictionaryEntry[]} dictionaryEntries +     * @param {import('translation-internal').TermDictionaryEntry[]} dictionaryEntries       * @param {import('translation').TermEnabledDictionaryMap} enabledDictionaryMap       * @param {TranslatorTagAggregator} tagAggregator       */ @@ -1543,7 +1555,7 @@ export class Translator {      /**       * @param {boolean} isPrimary -     * @param {import('dictionary').InflectionRuleChainCandidate[]} inflectionRuleChainCandidates +     * @param {import('translation-internal').InflectionRuleChainCandidate[]} inflectionRuleChainCandidates       * @param {number} score       * @param {number} dictionaryIndex       * @param {number} dictionaryPriority @@ -1551,7 +1563,7 @@ export class Translator {       * @param {number} maxOriginalTextLength       * @param {import('dictionary').TermHeadword[]} headwords       * @param {import('dictionary').TermDefinition[]} definitions -     * @returns {import('dictionary').TermDictionaryEntry} +     * @returns {import('translation-internal').TermDictionaryEntry}       */      _createTermDictionaryEntry(isPrimary, inflectionRuleChainCandidates, score, dictionaryIndex, dictionaryPriority, sourceTermExactMatchCount, maxOriginalTextLength, headwords, definitions) {          return { @@ -1576,11 +1588,11 @@ export class Translator {       * @param {string} originalText       * @param {string} transformedText       * @param {string} deinflectedText -     * @param {import('dictionary').InflectionRuleChainCandidate[]} inflectionRuleChainCandidates +     * @param {import('translation-internal').InflectionRuleChainCandidate[]} inflectionRuleChainCandidates       * @param {boolean} isPrimary       * @param {Map<string, import('translation').FindTermDictionary>} enabledDictionaryMap       * @param {TranslatorTagAggregator} tagAggregator -     * @returns {import('dictionary').TermDictionaryEntry} +     * @returns {import('translation-internal').TermDictionaryEntry}       */      _createTermDictionaryEntryFromDatabaseEntry(databaseEntry, originalText, transformedText, deinflectedText, inflectionRuleChainCandidates, isPrimary, enabledDictionaryMap, tagAggregator) {          const { @@ -1628,10 +1640,10 @@ export class Translator {      }      /** -     * @param {import('dictionary').TermDictionaryEntry[]} dictionaryEntries +     * @param {import('translation-internal').TermDictionaryEntry[]} dictionaryEntries       * @param {boolean} checkDuplicateDefinitions       * @param {TranslatorTagAggregator} tagAggregator -     * @returns {import('dictionary').TermDictionaryEntry} +     * @returns {import('translation-internal').TermDictionaryEntry}       */      _createGroupedDictionaryEntry(dictionaryEntries, checkDuplicateDefinitions, tagAggregator) {          // Headwords are generated before sorting, so that the order of dictionaryEntries can be maintained @@ -1864,13 +1876,13 @@ export class Translator {      }      /** -     * @param {import('dictionary').TermDictionaryEntry[]} dictionaryEntries +     * @param {import('translation-internal').TermDictionaryEntry[]} dictionaryEntries       */      _sortTermDictionaryEntries(dictionaryEntries) {          const stringComparer = this._stringComparer;          /** -         * @param {import('dictionary').TermDictionaryEntry} v1 -         * @param {import('dictionary').TermDictionaryEntry} v2 +         * @param {import('translation-internal').TermDictionaryEntry} v1 +         * @param {import('translation-internal').TermDictionaryEntry} v2           * @returns {number}           */          const compareFunction = (v1, v2) => { @@ -1968,7 +1980,7 @@ export class Translator {      }      /** -     * @param {import('dictionary').TermDictionaryEntry[]} dictionaryEntries +     * @param {import('translation-internal').TermDictionaryEntry[]} dictionaryEntries       */      _sortTermDictionaryEntriesById(dictionaryEntries) {          if (dictionaryEntries.length <= 1) { return; } @@ -2033,7 +2045,7 @@ export class Translator {      }      /** -     * @param {import('dictionary').TermDictionaryEntry[]} dictionaryEntries +     * @param {import('translation-internal').TermDictionaryEntry[]} dictionaryEntries       * @param {string} dictionary       * @param {boolean} ascending       */ @@ -2078,7 +2090,7 @@ export class Translator {      }      /** -     * @param {import('dictionary').InflectionRuleChainCandidate[]} inflectionRuleChainCandidates +     * @param {import('translation-internal').InflectionRuleChainCandidate[]} inflectionRuleChainCandidates       * @returns {number}       */      _getShortestInflectionChainLength(inflectionRuleChainCandidates) { @@ -2090,6 +2102,25 @@ export class Translator {          return length;      } + +    /** +     * @param {string} language +     * @param {import('translation-internal').TermDictionaryEntry[]} dictionaryEntries +     * @returns {import('dictionary').TermDictionaryEntry[]} +     */ +    _addUserFacingInflections(language, dictionaryEntries) { +        const result = []; +        for (const dictionaryEntry of dictionaryEntries) { +            const {inflectionRuleChainCandidates} = dictionaryEntry; +            const expandedChains = inflectionRuleChainCandidates.map(({source, inflectionRules}) => ({ +                source, +                inflectionRules: this._multiLanguageTransformer.getUserFacingInflectionRules(language, inflectionRules), +            })); +            result.push({...dictionaryEntry, inflectionRuleChainCandidates: expandedChains}); +        } +        return result; +    } +      // Miscellaneous      /** |