UNPKG

node-nlp

Version:

Library for NLU (Natural Language Understanding) done in Node.js

1,335 lines (1,301 loc) 29.8 kB
/* * Copyright (c) AXA Shared Services Spain S.A. * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the * "Software"), to deal in the Software without restriction, including * without limitation the rights to use, copy, modify, merge, publish, * distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ const BaseStemmer = require('./base-stemmer'); const Among = require('./among'); /** * This class was automatically generated by a Snowball to JSX compiler * It implements the stemming algorithm defined by a snowball script. */ class HungarianStemmer extends BaseStemmer { constructor(tokenizer) { super(tokenizer); this.I_p1 = 0; } copy_from(other) { this.I_p1 = other.I_p1; super.copy_from(other); } r_mark_regions() { let v_1; let v_2; let v_3; // (, line 44 this.I_p1 = this.limit; // or, line 51 let lab0 = true; lab0: while (lab0 == true) { lab0 = false; v_1 = this.cursor; let lab1 = true; lab1: while (lab1 == true) { lab1 = false; // (, line 48 if (!this.in_grouping(HungarianStemmer.g_v, 97, 252)) { break; } // goto, line 48 golab2: while (true) { v_2 = this.cursor; let lab3 = true; while (lab3 == true) { lab3 = false; if (!this.out_grouping(HungarianStemmer.g_v, 97, 252)) { break; } this.cursor = v_2; break golab2; } this.cursor = v_2; if (this.cursor >= this.limit) { break lab1; } this.cursor++; } // or, line 49 let lab4 = true; lab4: while (lab4 == true) { lab4 = false; v_3 = this.cursor; let lab5 = true; while (lab5 == true) { lab5 = false; // among, line 49 if (this.find_among(HungarianStemmer.a_0, 8) == 0) { break; } break lab4; } this.cursor = v_3; // next, line 49 if (this.cursor >= this.limit) { break lab1; } this.cursor++; } // setmark p1, line 50 this.I_p1 = this.cursor; break lab0; } this.cursor = v_1; // (, line 53 if (!this.out_grouping(HungarianStemmer.g_v, 97, 252)) { return false; } // gopast, line 53 golab6: while (true) { let lab7 = true; while (lab7 == true) { lab7 = false; if (!this.in_grouping(HungarianStemmer.g_v, 97, 252)) { break; } break golab6; } if (this.cursor >= this.limit) { return false; } this.cursor++; } // setmark p1, line 53 this.I_p1 = this.cursor; } return true; } r_R1() { if (!(this.I_p1 <= this.cursor)) { return false; } return true; } r_v_ending() { let among_var; // (, line 60 // [, line 61 this.ket = this.cursor; // substring, line 61 among_var = this.find_among_b(HungarianStemmer.a_1, 2); if (among_var == 0) { return false; } // ], line 61 this.bra = this.cursor; // call R1, line 61 if (!this.r_R1()) { return false; } switch (among_var) { case 0: return false; case 1: // (, line 62 // <-, line 62 if (!this.slice_from('a')) { return false; } break; case 2: // (, line 63 // <-, line 63 if (!this.slice_from('e')) { return false; } break; } return true; } r_double() { let v_1; // (, line 67 // test, line 68 v_1 = this.limit - this.cursor; // among, line 68 if (this.find_among_b(HungarianStemmer.a_2, 23) == 0) { return false; } this.cursor = this.limit - v_1; return true; } r_undouble() { // (, line 72 // next, line 73 if (this.cursor <= this.limit_backward) { return false; } this.cursor--; // [, line 73 this.ket = this.cursor; // hop, line 73 { const c = this.cursor - 1; if (this.limit_backward > c || c > this.limit) { return false; } this.cursor = c; } // ], line 73 this.bra = this.cursor; // delete, line 73 if (!this.slice_del()) { return false; } return true; } r_instrum() { let among_var; // (, line 76 // [, line 77 this.ket = this.cursor; // substring, line 77 among_var = this.find_among_b(HungarianStemmer.a_3, 2); if (among_var == 0) { return false; } // ], line 77 this.bra = this.cursor; // call R1, line 77 if (!this.r_R1()) { return false; } switch (among_var) { case 0: return false; case 1: // (, line 78 // call double, line 78 if (!this.r_double()) { return false; } break; case 2: // (, line 79 // call double, line 79 if (!this.r_double()) { return false; } break; } // delete, line 81 if (!this.slice_del()) { return false; } // call undouble, line 82 if (!this.r_undouble()) { return false; } return true; } r_case() { // (, line 86 // [, line 87 this.ket = this.cursor; // substring, line 87 if (this.find_among_b(HungarianStemmer.a_4, 44) == 0) { return false; } // ], line 87 this.bra = this.cursor; // call R1, line 87 if (!this.r_R1()) { return false; } // delete, line 111 if (!this.slice_del()) { return false; } // call v_ending, line 112 if (!this.r_v_ending()) { return false; } return true; } r_case_special() { let among_var; // (, line 115 // [, line 116 this.ket = this.cursor; // substring, line 116 among_var = this.find_among_b(HungarianStemmer.a_5, 3); if (among_var == 0) { return false; } // ], line 116 this.bra = this.cursor; // call R1, line 116 if (!this.r_R1()) { return false; } switch (among_var) { case 0: return false; case 1: // (, line 117 // <-, line 117 if (!this.slice_from('e')) { return false; } break; case 2: // (, line 118 // <-, line 118 if (!this.slice_from('a')) { return false; } break; case 3: // (, line 119 // <-, line 119 if (!this.slice_from('a')) { return false; } break; } return true; } r_case_other() { let among_var; // (, line 123 // [, line 124 this.ket = this.cursor; // substring, line 124 among_var = this.find_among_b(HungarianStemmer.a_6, 6); if (among_var == 0) { return false; } // ], line 124 this.bra = this.cursor; // call R1, line 124 if (!this.r_R1()) { return false; } switch (among_var) { case 0: return false; case 1: // (, line 125 // delete, line 125 if (!this.slice_del()) { return false; } break; case 2: // (, line 126 // delete, line 126 if (!this.slice_del()) { return false; } break; case 3: // (, line 127 // <-, line 127 if (!this.slice_from('a')) { return false; } break; case 4: // (, line 128 // <-, line 128 if (!this.slice_from('e')) { return false; } break; } return true; } r_factive() { let among_var; // (, line 132 // [, line 133 this.ket = this.cursor; // substring, line 133 among_var = this.find_among_b(HungarianStemmer.a_7, 2); if (among_var == 0) { return false; } // ], line 133 this.bra = this.cursor; // call R1, line 133 if (!this.r_R1()) { return false; } switch (among_var) { case 0: return false; case 1: // (, line 134 // call double, line 134 if (!this.r_double()) { return false; } break; case 2: // (, line 135 // call double, line 135 if (!this.r_double()) { return false; } break; } // delete, line 137 if (!this.slice_del()) { return false; } // call undouble, line 138 if (!this.r_undouble()) { return false; } return true; } r_plural() { let among_var; // (, line 141 // [, line 142 this.ket = this.cursor; // substring, line 142 among_var = this.find_among_b(HungarianStemmer.a_8, 7); if (among_var == 0) { return false; } // ], line 142 this.bra = this.cursor; // call R1, line 142 if (!this.r_R1()) { return false; } switch (among_var) { case 0: return false; case 1: // (, line 143 // <-, line 143 if (!this.slice_from('a')) { return false; } break; case 2: // (, line 144 // <-, line 144 if (!this.slice_from('e')) { return false; } break; case 3: // (, line 145 // delete, line 145 if (!this.slice_del()) { return false; } break; case 4: // (, line 146 // delete, line 146 if (!this.slice_del()) { return false; } break; case 5: // (, line 147 // delete, line 147 if (!this.slice_del()) { return false; } break; case 6: // (, line 148 // delete, line 148 if (!this.slice_del()) { return false; } break; case 7: // (, line 149 // delete, line 149 if (!this.slice_del()) { return false; } break; } return true; } r_owned() { let among_var; // (, line 153 // [, line 154 this.ket = this.cursor; // substring, line 154 among_var = this.find_among_b(HungarianStemmer.a_9, 12); if (among_var == 0) { return false; } // ], line 154 this.bra = this.cursor; // call R1, line 154 if (!this.r_R1()) { return false; } switch (among_var) { case 0: return false; case 1: // (, line 155 // delete, line 155 if (!this.slice_del()) { return false; } break; case 2: // (, line 156 // <-, line 156 if (!this.slice_from('e')) { return false; } break; case 3: // (, line 157 // <-, line 157 if (!this.slice_from('a')) { return false; } break; case 4: // (, line 158 // delete, line 158 if (!this.slice_del()) { return false; } break; case 5: // (, line 159 // <-, line 159 if (!this.slice_from('e')) { return false; } break; case 6: // (, line 160 // <-, line 160 if (!this.slice_from('a')) { return false; } break; case 7: // (, line 161 // delete, line 161 if (!this.slice_del()) { return false; } break; case 8: // (, line 162 // <-, line 162 if (!this.slice_from('e')) { return false; } break; case 9: // (, line 163 // delete, line 163 if (!this.slice_del()) { return false; } break; } return true; } r_sing_owner() { let among_var; // (, line 167 // [, line 168 this.ket = this.cursor; // substring, line 168 among_var = this.find_among_b(HungarianStemmer.a_10, 31); if (among_var == 0) { return false; } // ], line 168 this.bra = this.cursor; // call R1, line 168 if (!this.r_R1()) { return false; } switch (among_var) { case 0: return false; case 1: // (, line 169 // delete, line 169 if (!this.slice_del()) { return false; } break; case 2: // (, line 170 // <-, line 170 if (!this.slice_from('a')) { return false; } break; case 3: // (, line 171 // <-, line 171 if (!this.slice_from('e')) { return false; } break; case 4: // (, line 172 // delete, line 172 if (!this.slice_del()) { return false; } break; case 5: // (, line 173 // <-, line 173 if (!this.slice_from('a')) { return false; } break; case 6: // (, line 174 // <-, line 174 if (!this.slice_from('e')) { return false; } break; case 7: // (, line 175 // delete, line 175 if (!this.slice_del()) { return false; } break; case 8: // (, line 176 // delete, line 176 if (!this.slice_del()) { return false; } break; case 9: // (, line 177 // delete, line 177 if (!this.slice_del()) { return false; } break; case 10: // (, line 178 // <-, line 178 if (!this.slice_from('a')) { return false; } break; case 11: // (, line 179 // <-, line 179 if (!this.slice_from('e')) { return false; } break; case 12: // (, line 180 // delete, line 180 if (!this.slice_del()) { return false; } break; case 13: // (, line 181 // delete, line 181 if (!this.slice_del()) { return false; } break; case 14: // (, line 182 // <-, line 182 if (!this.slice_from('a')) { return false; } break; case 15: // (, line 183 // <-, line 183 if (!this.slice_from('e')) { return false; } break; case 16: // (, line 184 // delete, line 184 if (!this.slice_del()) { return false; } break; case 17: // (, line 185 // delete, line 185 if (!this.slice_del()) { return false; } break; case 18: // (, line 186 // delete, line 186 if (!this.slice_del()) { return false; } break; case 19: // (, line 187 // <-, line 187 if (!this.slice_from('a')) { return false; } break; case 20: // (, line 188 // <-, line 188 if (!this.slice_from('e')) { return false; } break; } return true; } r_plur_owner() { let among_var; // (, line 192 // [, line 193 this.ket = this.cursor; // substring, line 193 among_var = this.find_among_b(HungarianStemmer.a_11, 42); if (among_var == 0) { return false; } // ], line 193 this.bra = this.cursor; // call R1, line 193 if (!this.r_R1()) { return false; } switch (among_var) { case 0: return false; case 1: // (, line 194 // delete, line 194 if (!this.slice_del()) { return false; } break; case 2: // (, line 195 // <-, line 195 if (!this.slice_from('a')) { return false; } break; case 3: // (, line 196 // <-, line 196 if (!this.slice_from('e')) { return false; } break; case 4: // (, line 197 // delete, line 197 if (!this.slice_del()) { return false; } break; case 5: // (, line 198 // delete, line 198 if (!this.slice_del()) { return false; } break; case 6: // (, line 199 // delete, line 199 if (!this.slice_del()) { return false; } break; case 7: // (, line 200 // <-, line 200 if (!this.slice_from('a')) { return false; } break; case 8: // (, line 201 // <-, line 201 if (!this.slice_from('e')) { return false; } break; case 9: // (, line 202 // delete, line 202 if (!this.slice_del()) { return false; } break; case 10: // (, line 203 // delete, line 203 if (!this.slice_del()) { return false; } break; case 11: // (, line 204 // delete, line 204 if (!this.slice_del()) { return false; } break; case 12: // (, line 205 // <-, line 205 if (!this.slice_from('a')) { return false; } break; case 13: // (, line 206 // <-, line 206 if (!this.slice_from('e')) { return false; } break; case 14: // (, line 207 // delete, line 207 if (!this.slice_del()) { return false; } break; case 15: // (, line 208 // delete, line 208 if (!this.slice_del()) { return false; } break; case 16: // (, line 209 // delete, line 209 if (!this.slice_del()) { return false; } break; case 17: // (, line 210 // delete, line 210 if (!this.slice_del()) { return false; } break; case 18: // (, line 211 // <-, line 211 if (!this.slice_from('a')) { return false; } break; case 19: // (, line 212 // <-, line 212 if (!this.slice_from('e')) { return false; } break; case 20: // (, line 214 // delete, line 214 if (!this.slice_del()) { return false; } break; case 21: // (, line 215 // delete, line 215 if (!this.slice_del()) { return false; } break; case 22: // (, line 216 // <-, line 216 if (!this.slice_from('a')) { return false; } break; case 23: // (, line 217 // <-, line 217 if (!this.slice_from('e')) { return false; } break; case 24: // (, line 218 // delete, line 218 if (!this.slice_del()) { return false; } break; case 25: // (, line 219 // delete, line 219 if (!this.slice_del()) { return false; } break; case 26: // (, line 220 // delete, line 220 if (!this.slice_del()) { return false; } break; case 27: // (, line 221 // <-, line 221 if (!this.slice_from('a')) { return false; } break; case 28: // (, line 222 // <-, line 222 if (!this.slice_from('e')) { return false; } break; case 29: // (, line 223 // delete, line 223 if (!this.slice_del()) { return false; } break; } return true; } stem() { let v_1; let v_2; let v_3; let v_4; let v_5; let v_6; let v_7; let v_8; let v_9; let v_10; // (, line 228 // do, line 229 v_1 = this.cursor; let lab0 = true; while (lab0 == true) { lab0 = false; // call mark_regions, line 229 if (!this.r_mark_regions()) { break; } } this.cursor = v_1; // backwards, line 230 this.limit_backward = this.cursor; this.cursor = this.limit; // (, line 230 // do, line 231 v_2 = this.limit - this.cursor; let lab1 = true; while (lab1 == true) { lab1 = false; // call instrum, line 231 if (!this.r_instrum()) { break; } } this.cursor = this.limit - v_2; // do, line 232 v_3 = this.limit - this.cursor; let lab2 = true; while (lab2 == true) { lab2 = false; // call case, line 232 if (!this.r_case()) { break; } } this.cursor = this.limit - v_3; // do, line 233 v_4 = this.limit - this.cursor; let lab3 = true; while (lab3 == true) { lab3 = false; // call case_special, line 233 if (!this.r_case_special()) { break; } } this.cursor = this.limit - v_4; // do, line 234 v_5 = this.limit - this.cursor; let lab4 = true; while (lab4 == true) { lab4 = false; // call case_other, line 234 if (!this.r_case_other()) { break; } } this.cursor = this.limit - v_5; // do, line 235 v_6 = this.limit - this.cursor; let lab5 = true; while (lab5 == true) { lab5 = false; // call factive, line 235 if (!this.r_factive()) { break; } } this.cursor = this.limit - v_6; // do, line 236 v_7 = this.limit - this.cursor; let lab6 = true; while (lab6 == true) { lab6 = false; // call owned, line 236 if (!this.r_owned()) { break; } } this.cursor = this.limit - v_7; // do, line 237 v_8 = this.limit - this.cursor; let lab7 = true; while (lab7 == true) { lab7 = false; // call sing_owner, line 237 if (!this.r_sing_owner()) { break; } } this.cursor = this.limit - v_8; // do, line 238 v_9 = this.limit - this.cursor; let lab8 = true; while (lab8 == true) { lab8 = false; // call plur_owner, line 238 if (!this.r_plur_owner()) { break; } } this.cursor = this.limit - v_9; // do, line 239 v_10 = this.limit - this.cursor; let lab9 = true; while (lab9 == true) { lab9 = false; // call plural, line 239 if (!this.r_plural()) { break; } } this.cursor = this.limit - v_10; this.cursor = this.limit_backward; return true; } } HungarianStemmer.methodObject = new HungarianStemmer(); HungarianStemmer.a_0 = [ new Among('cs', -1, -1), new Among('dzs', -1, -1), new Among('gy', -1, -1), new Among('ly', -1, -1), new Among('ny', -1, -1), new Among('sz', -1, -1), new Among('ty', -1, -1), new Among('zs', -1, -1) ]; HungarianStemmer.a_1 = [new Among('\u00E1', -1, 1), new Among('\u00E9', -1, 2)]; HungarianStemmer.a_2 = [ new Among('bb', -1, -1), new Among('cc', -1, -1), new Among('dd', -1, -1), new Among('ff', -1, -1), new Among('gg', -1, -1), new Among('jj', -1, -1), new Among('kk', -1, -1), new Among('ll', -1, -1), new Among('mm', -1, -1), new Among('nn', -1, -1), new Among('pp', -1, -1), new Among('rr', -1, -1), new Among('ccs', -1, -1), new Among('ss', -1, -1), new Among('zzs', -1, -1), new Among('tt', -1, -1), new Among('vv', -1, -1), new Among('ggy', -1, -1), new Among('lly', -1, -1), new Among('nny', -1, -1), new Among('tty', -1, -1), new Among('ssz', -1, -1), new Among('zz', -1, -1) ]; HungarianStemmer.a_3 = [new Among('al', -1, 1), new Among('el', -1, 2)]; HungarianStemmer.a_4 = [ new Among('ba', -1, -1), new Among('ra', -1, -1), new Among('be', -1, -1), new Among('re', -1, -1), new Among('ig', -1, -1), new Among('nak', -1, -1), new Among('nek', -1, -1), new Among('val', -1, -1), new Among('vel', -1, -1), new Among('ul', -1, -1), new Among('n\u00E1l', -1, -1), new Among('n\u00E9l', -1, -1), new Among('b\u00F3l', -1, -1), new Among('r\u00F3l', -1, -1), new Among('t\u00F3l', -1, -1), new Among('b\u00F5l', -1, -1), new Among('r\u00F5l', -1, -1), new Among('t\u00F5l', -1, -1), new Among('\u00FCl', -1, -1), new Among('n', -1, -1), new Among('an', 19, -1), new Among('ban', 20, -1), new Among('en', 19, -1), new Among('ben', 22, -1), new Among('k\u00E9ppen', 22, -1), new Among('on', 19, -1), new Among('\u00F6n', 19, -1), new Among('k\u00E9pp', -1, -1), new Among('kor', -1, -1), new Among('t', -1, -1), new Among('at', 29, -1), new Among('et', 29, -1), new Among('k\u00E9nt', 29, -1), new Among('ank\u00E9nt', 32, -1), new Among('enk\u00E9nt', 32, -1), new Among('onk\u00E9nt', 32, -1), new Among('ot', 29, -1), new Among('\u00E9rt', 29, -1), new Among('\u00F6t', 29, -1), new Among('hez', -1, -1), new Among('hoz', -1, -1), new Among('h\u00F6z', -1, -1), new Among('v\u00E1', -1, -1), new Among('v\u00E9', -1, -1) ]; HungarianStemmer.a_5 = [ new Among('\u00E1n', -1, 2), new Among('\u00E9n', -1, 1), new Among('\u00E1nk\u00E9nt', -1, 3) ]; HungarianStemmer.a_6 = [ new Among('stul', -1, 2), new Among('astul', 0, 1), new Among('\u00E1stul', 0, 3), new Among('st\u00FCl', -1, 2), new Among('est\u00FCl', 3, 1), new Among('\u00E9st\u00FCl', 3, 4) ]; HungarianStemmer.a_7 = [new Among('\u00E1', -1, 1), new Among('\u00E9', -1, 2)]; HungarianStemmer.a_8 = [ new Among('k', -1, 7), new Among('ak', 0, 4), new Among('ek', 0, 6), new Among('ok', 0, 5), new Among('\u00E1k', 0, 1), new Among('\u00E9k', 0, 2), new Among('\u00F6k', 0, 3) ]; HungarianStemmer.a_9 = [ new Among('\u00E9i', -1, 7), new Among('\u00E1\u00E9i', 0, 6), new Among('\u00E9\u00E9i', 0, 5), new Among('\u00E9', -1, 9), new Among('k\u00E9', 3, 4), new Among('ak\u00E9', 4, 1), new Among('ek\u00E9', 4, 1), new Among('ok\u00E9', 4, 1), new Among('\u00E1k\u00E9', 4, 3), new Among('\u00E9k\u00E9', 4, 2), new Among('\u00F6k\u00E9', 4, 1), new Among('\u00E9\u00E9', 3, 8) ]; HungarianStemmer.a_10 = [ new Among('a', -1, 18), new Among('ja', 0, 17), new Among('d', -1, 16), new Among('ad', 2, 13), new Among('ed', 2, 13), new Among('od', 2, 13), new Among('\u00E1d', 2, 14), new Among('\u00E9d', 2, 15), new Among('\u00F6d', 2, 13), new Among('e', -1, 18), new Among('je', 9, 17), new Among('nk', -1, 4), new Among('unk', 11, 1), new Among('\u00E1nk', 11, 2), new Among('\u00E9nk', 11, 3), new Among('\u00FCnk', 11, 1), new Among('uk', -1, 8), new Among('juk', 16, 7), new Among('\u00E1juk', 17, 5), new Among('\u00FCk', -1, 8), new Among('j\u00FCk', 19, 7), new Among('\u00E9j\u00FCk', 20, 6), new Among('m', -1, 12), new Among('am', 22, 9), new Among('em', 22, 9), new Among('om', 22, 9), new Among('\u00E1m', 22, 10), new Among('\u00E9m', 22, 11), new Among('o', -1, 18), new Among('\u00E1', -1, 19), new Among('\u00E9', -1, 20) ]; HungarianStemmer.a_11 = [ new Among('id', -1, 10), new Among('aid', 0, 9), new Among('jaid', 1, 6), new Among('eid', 0, 9), new Among('jeid', 3, 6), new Among('\u00E1id', 0, 7), new Among('\u00E9id', 0, 8), new Among('i', -1, 15), new Among('ai', 7, 14), new Among('jai', 8, 11), new Among('ei', 7, 14), new Among('jei', 10, 11), new Among('\u00E1i', 7, 12), new Among('\u00E9i', 7, 13), new Among('itek', -1, 24), new Among('eitek', 14, 21), new Among('jeitek', 15, 20), new Among('\u00E9itek', 14, 23), new Among('ik', -1, 29), new Among('aik', 18, 26), new Among('jaik', 19, 25), new Among('eik', 18, 26), new Among('jeik', 21, 25), new Among('\u00E1ik', 18, 27), new Among('\u00E9ik', 18, 28), new Among('ink', -1, 20), new Among('aink', 25, 17), new Among('jaink', 26, 16), new Among('eink', 25, 17), new Among('jeink', 28, 16), new Among('\u00E1ink', 25, 18), new Among('\u00E9ink', 25, 19), new Among('aitok', -1, 21), new Among('jaitok', 32, 20), new Among('\u00E1itok', -1, 22), new Among('im', -1, 5), new Among('aim', 35, 4), new Among('jaim', 36, 1), new Among('eim', 35, 4), new Among('jeim', 38, 1), new Among('\u00E1im', 35, 2), new Among('\u00E9im', 35, 3) ]; HungarianStemmer.g_v = [ 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 52, 14 ]; module.exports = HungarianStemmer;