UNPKG

mespeak

Version:
1,705 lines (1,607 loc) 4.94 MB
module.exports = function ESpeak() { // emscripten implementation var vprint = console.warn var Module = { noInitialRun: true }; // WARNING: .ll contains i64 or double values. These 64-bit values are dangerous in USE_TYPED_ARRAYS == 2. // We store i64 as i32, and double as float. This can cause serious problems! "use strict"; /* // Capture the output of this into a variable, if you want (function(Module, args) { Module = Module || {}; Module.arguments = args || []; */ ///* // Runs much faster, for some reason if (!this.Module) { this.Module = {}; } if (!Module.arguments) { try { Module.arguments = scriptArgs; } catch(e) { try { Module.arguments = arguments; } catch(e) { Module.arguments = []; } } } //*/ // === Auto-generated preamble library stuff === //======================================== // Runtime code shared with compiler //======================================== var Runtime = { stackSave: function () { return STACKTOP; }, stackRestore: function (stackTop) { STACKTOP = stackTop; }, forceAlign: function (target, quantum) { quantum = quantum || 4; if (isNumber(target) && isNumber(quantum)) { return Math.ceil(target/quantum)*quantum; } else { return 'Math.ceil((' + target + ')/' + quantum + ')*' + quantum; } }, isNumberType: function (type) { return type in Runtime.INT_TYPES || type in Runtime.FLOAT_TYPES; }, isPointerType: function isPointerType(type) { return pointingLevels(type) > 0; }, isStructType: function isStructType(type) { if (isPointerType(type)) return false; if (new RegExp(/^\[\d+\ x\ (.*)\]/g).test(type)) return true; // [15 x ?] blocks. Like structs if (new RegExp(/<?{ [^}]* }>?/g).test(type)) return true; // { i32, i8 } etc. - anonymous struct types // See comment in isStructPointerType() return !Runtime.isNumberType(type) && type[0] == '%'; }, INT_TYPES: {"i1":0,"i8":0,"i16":0,"i32":0,"i64":0}, FLOAT_TYPES: {"float":0,"double":0}, or64: function (x, y) { var l = (x | 0) | (y | 0); var h = (Math.round(x / 4294967296) | Math.round(y / 4294967296)) * 4294967296; return l + h; }, and64: function (x, y) { var l = (x | 0) & (y | 0); var h = (Math.round(x / 4294967296) & Math.round(y / 4294967296)) * 4294967296; return l + h; }, xor64: function (x, y) { var l = (x | 0) ^ (y | 0); var h = (Math.round(x / 4294967296) ^ Math.round(y / 4294967296)) * 4294967296; return l + h; }, getNativeFieldSize: function getNativeFieldSize(type) { return Math.max(Runtime.getNativeTypeSize(type), 4); }, getNativeTypeSize: function getNativeTypeSize(type) { if (4 == 1) return 1; var size = { '_i1': 1, '_i8': 1, '_i16': 2, '_i32': 4, '_i64': 8, "_float": 4, "_double": 8 }['_'+type]; // add '_' since float&double confuse Closure compiler as keys. if (!size && type[type.length-1] == '*') { size = 4; // A pointer } return size; }, dedup: function dedup(items, ident) { var seen = {}; if (ident) { return items.filter(function(item) { if (seen[item[ident]]) return false; seen[item[ident]] = true; return true; }); } else { return items.filter(function(item) { if (seen[item]) return false; seen[item] = true; return true; }); } }, set: function set() { var args = typeof arguments[0] === 'object' ? arguments[0] : arguments; var ret = {}; for (var i = 0; i < args.length; i++) { ret[args[i]] = 0; } return ret; }, calculateStructAlignment: function calculateStructAlignment(type) { type.flatSize = 0; type.alignSize = 0; var diffs = []; var prev = -1; type.flatIndexes = type.fields.map(function(field) { var size, alignSize; if (Runtime.isNumberType(field) || Runtime.isPointerType(field)) { size = Runtime.getNativeTypeSize(field); // pack char; char; in structs, also char[X]s. alignSize = size; } else if (Runtime.isStructType(field)) { size = Types.types[field].flatSize; alignSize = Types.types[field].alignSize; } else { dprint('Unclear type in struct: ' + field + ', in ' + type.name_ + ' :: ' + dump(Types.types[type.name_])); assert(0); } alignSize = type.packed ? 1 : Math.min(alignSize, 4); type.alignSize = Math.max(type.alignSize, alignSize); var curr = Runtime.alignMemory(type.flatSize, alignSize); // if necessary, place this on aligned memory type.flatSize = curr + size; if (prev >= 0) { diffs.push(curr-prev); } prev = curr; return curr; }); type.flatSize = Runtime.alignMemory(type.flatSize, type.alignSize); if (diffs.length == 0) { type.flatFactor = type.flatSize; } else if (Runtime.dedup(diffs).length == 1) { type.flatFactor = diffs[0]; } type.needsFlattening = (type.flatFactor != 1); return type.flatIndexes; }, generateStructInfo: function (struct, typeName, offset) { var type, alignment; if (typeName) { offset = offset || 0; type = (typeof Types === 'undefined' ? Runtime.typeInfo : Types.types)[typeName]; if (!type) return null; if (!struct) struct = (typeof Types === 'undefined' ? Runtime : Types).structMetadata[typeName.replace(/.*\./, '')]; if (!struct) return null; assert(type.fields.length === struct.length, 'Number of named fields must match the type for ' + typeName + '. Perhaps due to inheritance, which is not supported yet?'); alignment = type.flatIndexes; } else { var type = { fields: struct.map(function(item) { return item[0] }) }; alignment = Runtime.calculateStructAlignment(type); } var ret = { __size__: type.flatSize }; if (typeName) { struct.forEach(function(item, i) { if (typeof item === 'string') { ret[item] = alignment[i] + offset; } else { // embedded struct var key; for (var k in item) key = k; ret[key] = Runtime.generateStructInfo(item[key], type.fields[i], alignment[i]); } }); } else { struct.forEach(function(item, i) { ret[item[1]] = alignment[i]; }); } return ret; }, stackAlloc: function stackAlloc(size) { var ret = STACKTOP; _memset(STACKTOP, 0, size); STACKTOP += size;STACKTOP = Math.ceil((STACKTOP)/4)*4;; return ret; }, staticAlloc: function staticAlloc(size) { var ret = STATICTOP; STATICTOP += size;STATICTOP = Math.ceil((STATICTOP)/4)*4;; return ret; }, alignMemory: function alignMemory(size,quantum) { var ret = size = Math.ceil((size)/(quantum ? quantum : 4))*(quantum ? quantum : 4);; return ret; }, __dummy__: 0 } var CorrectionsMonitor = { MAX_ALLOWED: 0, // XXX corrections: 0, sigs: {}, note: function(type, succeed, sig) { if (!succeed) { this.corrections++; if (this.corrections >= this.MAX_ALLOWED) abort('\n\nToo many corrections!'); } }, vprint: function() { var items = []; for (var sig in this.sigs) { items.push({ sig: sig, fails: this.sigs[sig][0], succeeds: this.sigs[sig][1], total: this.sigs[sig][0] + this.sigs[sig][1] }); } items.sort(function(x, y) { return y.total - x.total; }); for (var i = 0; i < items.length; i++) { var item = items[i]; vprint(item.sig + ' : ' + item.total + ' hits, %' + (Math.ceil(100*item.fails/item.total)) + ' failures'); } } }; function cRound(x) { return x >= 0 ? Math.floor(x) : Math.ceil(x); } //======================================== // Runtime essentials //======================================== var __globalConstructor__ = function globalConstructor() { }; var __THREW__ = false; // Used in checking for thrown exceptions. var __ATEXIT__ = []; var ABORT = false; var undef = 0; var tempValue, tempInt, tempBigInt; function abort(text) { vprint(text + ':\n' + (new Error).stack); ABORT = true; throw "Assertion: " + text; } function assert(condition, text) { if (!condition) { abort('Assertion failed: ' + text); } } // Sets a value in memory in a dynamic way at run-time. Uses the // type data. This is the same as makeSetValue, except that // makeSetValue is done at compile-time and generates the needed // code then, whereas this function picks the right code at // run-time. function setValue(ptr, value, type) { if (type[type.length-1] === '*') type = 'i32'; // pointers are 32-bit switch(type) { case 'i1': HEAP8[(ptr)]=value;; break; case 'i8': HEAP8[(ptr)]=value;; break; case 'i16': HEAP16[((ptr)>>1)]=value;; break; case 'i32': HEAP32[((ptr)>>2)]=value;; break; case 'i64': HEAP32[((ptr)>>2)]=value;; break; case 'float': HEAPF32[((ptr)>>2)]=value;; break; case 'double': HEAPF32[((ptr)>>2)]=value;; break; default: abort('invalid type for setValue: ' + type); } } Module.setValue = setValue; // Parallel to setValue. function getValue(ptr, type) { if (type[type.length-1] === '*') type = 'i32'; // pointers are 32-bit switch(type) { case 'i1': return HEAP8[(ptr)]; case 'i8': return HEAP8[(ptr)]; case 'i16': return HEAP16[((ptr)>>1)]; case 'i32': return HEAP32[((ptr)>>2)]; case 'i64': return HEAP32[((ptr)>>2)]; case 'float': return HEAPF32[((ptr)>>2)]; case 'double': return HEAPF32[((ptr)>>2)]; default: abort('invalid type for setValue: ' + type); } return null; } Module.getValue = getValue; // Allocates memory for some data and initializes it properly. var ALLOC_NORMAL = 0; // Tries to use _malloc() var ALLOC_STACK = 1; // Lives for the duration of the current function call var ALLOC_STATIC = 2; // Cannot be freed Module.ALLOC_NORMAL = ALLOC_NORMAL; Module.ALLOC_STACK = ALLOC_STACK; Module.ALLOC_STATIC = ALLOC_STATIC; function allocate(slab, types, allocator) { var zeroinit, size; if (typeof slab === 'number') { zeroinit = true; size = slab; } else { zeroinit = false; size = slab.length; } var ret = [_malloc, Runtime.stackAlloc, Runtime.staticAlloc][allocator === undefined ? ALLOC_STATIC : allocator](Math.max(size, 1)); var singleType = typeof types === 'string' ? types : null; var i = 0, type; while (i < size) { var curr = zeroinit ? 0 : slab[i]; if (typeof curr === 'function') { curr = Runtime.getFunctionIndex(curr); } type = singleType || types[i]; if (type === 0) { i++; continue; } setValue(ret+i, curr, type); i += Runtime.getNativeTypeSize(type); } return ret; } Module.allocate = allocate; function Pointer_stringify(ptr) { var ret = ""; var i = 0; var t; var nullByte = String.fromCharCode(0); while (1) { t = String.fromCharCode(HEAPU8[(ptr+i)]); if (t == nullByte) { break; } else {} ret += t; i += 1; } return ret; } Module.Pointer_stringify = Pointer_stringify; function Array_stringify(array) { var ret = ""; for (var i = 0; i < array.length; i++) { ret += String.fromCharCode(array[i]); } return ret; } Module.Array_stringify = Array_stringify; // Memory management var FUNCTION_TABLE; // XXX: In theory the indexes here can be equal to pointers to stacked or malloced memory. Such comparisons should // be false, but can turn out true. We should probably set the top bit to prevent such issues. var PAGE_SIZE = 4096; function alignMemoryPage(x) { return Math.ceil(x/PAGE_SIZE)*PAGE_SIZE; } var HEAP; var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32; var STACK_ROOT, STACKTOP, STACK_MAX; var STATICTOP; var HAS_TYPED_ARRAYS = false; var TOTAL_MEMORY = Module.TOTAL_MEMORY || 52428800; var FAST_MEMORY = Module.FAST_MEMORY || 2097152; // Initialize the runtime's memory HAS_TYPED_ARRAYS = false; try { HAS_TYPED_ARRAYS = !!Int32Array && !!Float32Array && !!(new Int32Array(1).subarray); // check for full engine support (use string 'subarray' to avoid closure compiler confusion) } catch(e) {} if (HAS_TYPED_ARRAYS) { var buffer = new ArrayBuffer(TOTAL_MEMORY); HEAP8 = new Int8Array(buffer); HEAP16 = new Int16Array(buffer); HEAP32 = new Int32Array(buffer); HEAPU8 = new Uint8Array(buffer); HEAPU16 = new Uint16Array(buffer); HEAPU32 = new Uint32Array(buffer); HEAPF32 = new Float32Array(buffer); // Endianness check (note: assumes compiler arch was little-endian) HEAP32[0] = 255; assert(HEAPU8[0] === 255 && HEAPU8[3] === 0, 'Typed arrays 2 must be run on a little-endian system'); } else { // Make sure that our HEAP is implemented as a flat array. HEAP = new Array(TOTAL_MEMORY); for (var i = 0; i < FAST_MEMORY; i++) { HEAP[i] = 0; // XXX We do *not* use {{| makeSetValue(0, 'i', 0, 'null') |}} here, since this is done just to optimize runtime speed } abort('Cannot fallback to non-typed array case in USE_TYPED_ARRAYS == 2: Code is too specialized'); } var base = intArrayFromString('(null)'); // So printing %s of NULL gives '(null)' // Also this ensures we leave 0 as an invalid address, 'NULL' for (var i = 0; i < base.length; i++) { HEAP8[(i)]=base[i]; } Module.HEAP = HEAP; Module.HEAP8 = HEAP8; Module.HEAP16 = HEAP16; Module.HEAP32 = HEAP32; Module.HEAPU8 = HEAPU8; Module.HEAPU16 = HEAPU16; Module.HEAPU32 = HEAPU32; Module.HEAPF32 = HEAPF32; STACK_ROOT = STACKTOP = alignMemoryPage(10); var TOTAL_STACK = 1024*1024; // XXX: Changing this value can lead to bad perf on v8! STACK_MAX = STACK_ROOT + TOTAL_STACK; STATICTOP = alignMemoryPage(STACK_MAX); function __shutdownRuntime__() { while(__ATEXIT__.length > 0) { var atexit = __ATEXIT__.pop(); var func = atexit.func; if (typeof func === 'number') { func = FUNCTION_TABLE[func]; } func(atexit.arg === undefined ? null : atexit.arg); } // allow browser to GC, set heaps to null? // Print summary of correction activity CorrectionsMonitor.vprint(); } // Copies a list of num items on the HEAP into a // a normal JavaScript array of numbers function Array_copy(ptr, num) { // TODO: In the SAFE_HEAP case, do some reading here, for debugging purposes - currently this is an 'unnoticed read'. if (HAS_TYPED_ARRAYS) { return Array.prototype.slice.call(HEAP8.subarray(ptr, ptr+num)); // Make a normal array out of the typed 'view' // Consider making a typed array here, for speed? } else { return HEAP8.slice(ptr, ptr+num); } return HEAP.slice(ptr, ptr+num); } Module.Array_copy = Array_copy; function String_len(ptr) { var i = 0; while (HEAP8[(ptr+i)]) i++; // Note: should be |!= 0|, technically. But this helps catch bugs with undefineds return i; } Module.String_len = String_len; // Copies a C-style string, terminated by a zero, from the HEAP into // a normal JavaScript array of numbers function String_copy(ptr, addZero) { var len = String_len(ptr); if (addZero) len++; var ret = Array_copy(ptr, len); if (addZero) ret[len-1] = 0; return ret; } Module.String_copy = String_copy; // Tools this.vprint = function(x) {console.warn(x)} // This processes a JS string into a C-line array of numbers, 0-terminated. // For LLVM-originating strings, see parser.js:parseLLVMString function function intArrayFromString(stringy, dontAddNull) { var ret = []; var t; var i = 0; while (i < stringy.length) { var chr = stringy.charCodeAt(i); if (chr > 0xFF) { chr &= 0xFF; } ret.push(chr); i = i + 1; } if (!dontAddNull) { ret.push(0); } return ret; } Module.intArrayFromString = intArrayFromString; function intArrayToString(array) { var ret = []; for (var i = 0; i < array.length; i++) { var chr = array[i]; if (chr > 0xFF) { chr &= 0xFF; } ret.push(String.fromCharCode(chr)); } return ret.join(''); } Module.intArrayToString = intArrayToString; function unSign(value, bits, ignore, sig) { if (value >= 0) { return value; } return bits <= 32 ? 2*Math.abs(1 << (bits-1)) + value // Need some trickery, since if bits == 32, we are right at the limit of the bits JS uses in bitshifts : Math.pow(2, bits) + value; // TODO: clean up previous line } function reSign(value, bits, ignore, sig) { if (value <= 0) { return value; } var half = bits <= 32 ? Math.abs(1 << (bits-1)) // abs is needed if bits == 32 : Math.pow(2, bits-1); if (value >= half && (bits <= 32 || value > half)) { // for huge values, we can hit the precision limit and always get true here. so don't do that value = -2*half + value; // Cannot bitshift half, as it may be at the limit of the bits JS uses in bitshifts } return value; } // === Body === Runtime.QUANTUM_SIZE = 4 var $struct___sFILE___SIZE = 104; // %struct.__sFILE var $struct___sFILE___FLATTENER = [0,4,8,12,14,16,24,28,32,36,40,44,48,56,60,64,67,68,76,80,84,88,92,100]; var $struct___sbuf___SIZE = 8; // %struct.__sbuf var $struct__reent___SIZE = 1060; // %struct._reent var $struct__reent___FLATTENER = [0,4,8,12,16,20,48,52,56,60,64,68,72,76,80,84,88,328,332,732,736,748]; var $struct__Bigint___SIZE = 24; // %struct._Bigint var $union_anon_0___SIZE = 240; // %union.anon.0 var $struct_anon_1___SIZE = 240; // %struct.anon.1 var $struct__atexit___SIZE = 400; // %struct._atexit var $struct__atexit___FLATTENER = [0,4,8,136]; var $struct__on_exit_args___SIZE = 264; // %struct._on_exit_args var $struct__on_exit_args___FLATTENER = [0,128,256,260]; var $struct__glue___SIZE = 12; // %struct._glue var $struct__mbstate_t___SIZE = 8; // %struct._mbstate_t var $union_anon___SIZE = 4; // %union.anon var $struct_option___SIZE = 16; // %struct.option var $struct_MNEM_TAB___SIZE = 8; // %struct.MNEM_TAB var $struct_MatchRecord___SIZE = 16; // %struct.MatchRecord var $struct_TUNE___SIZE = 68; // %struct.TUNE var $struct_TUNE___FLATTENER = [0,12,16,24,25,26,27,28,29,30,31,32,33,34,35,36,39,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,64]; var $struct_SYLLABLE___SIZE = 6; // %struct.SYLLABLE var $struct_TONE_HEAD___SIZE = 16; // %struct.TONE_HEAD var $struct_TONE_HEAD___FLATTENER = [0,1,2,3,4,8,9,10,12]; var $struct_SSML_STACK___SIZE = 76; // %struct.SSML_STACK var $struct_SSML_STACK___FLATTENER = [0,4,8,12,16,56]; var $struct_PARAM_STACK_45___SIZE = 64; // %struct.PARAM_STACK.45 var $struct_ACCENTS___SIZE = 8; // %struct.ACCENTS var $struct_MBROLA_TAB___SIZE = 24; // %struct.MBROLA_TAB var $struct_PHONEME_TAB___SIZE = 16; // %struct.PHONEME_TAB var $struct_PHONEME_TAB___FLATTENER = [0,4,8,10,11,12,13,14,15]; var $struct_PHONEME_TAB_LIST_106___SIZE = 48; // %struct.PHONEME_TAB_LIST.106 var $struct_PHONEME_TAB_LIST_106___FLATTENER = [0,32,36,40,44]; var $struct_frameref_t___SIZE = 8; // %struct.frameref_t var $struct_frame_t___SIZE = 64; // %struct.frame_t var $struct_frame_t___FLATTENER = [0,2,16,17,18,26,32,35,39,44,49,56,63]; var $struct_PHONEME_DATA___SIZE = 152; // %struct.PHONEME_DATA var $struct_PHONEME_DATA___FLATTENER = [0,4,68,88,108,124,128,132]; var $struct_PHONEME_LIST___SIZE = 24; // %struct.PHONEME_LIST var $struct_PHONEME_LIST___FLATTENER = [0,1,2,3,4,6,8,12,14,15,16,17,18,19,20,21]; var $struct_SPEED_FACTORS___SIZE = 64; // %struct.SPEED_FACTORS var $struct_voice_t___SIZE = 1344; // %struct.voice_t var $struct_voice_t___FLATTENER = [0,40,44,48,52,56,60,64,68,72,76,80,84,88,92,96,100,104,108,112,144,162,180,198,216,234,252,272,308,344]; var $struct_SOUND_ICON___SIZE = 16; // %struct.SOUND_ICON var $struct_Translator___SIZE = 8328; // %struct.Translator var $struct_Translator___FLATTENER = [0,280,284,288,292,332,632,652,656,660,668,676,692,696,700,704,708,964,968,1000,1048,1052,1056,5152,5256,6280,6792,7272,7752,7756,8012,8268,8272,8276,8280,8284,8288,8292,8296,8300,8304,8308,8312,8316,8320,8324]; var $struct_LANGUAGE_OPTIONS___SIZE = 280; // %struct.LANGUAGE_OPTIONS var $struct_LANGUAGE_OPTIONS___FLATTENER = [0,4,8,12,16,20,24,100,176,180,184,188,192,196,200,204,208,212,216,220,224,228,232,240,244,248,249,250,251,252,256,260,264,268,272,276]; var $struct_PHONEME_LIST2___SIZE = 8; // %struct.PHONEME_LIST2 var $struct_PHONEME_LIST2___FLATTENER = [0,1,2,3,4,6]; var $struct_REPLACE_PHONEMES___SIZE = 3; // %struct.REPLACE_PHONEMES var $struct_datablock___SIZE = 16; // %struct.datablock var $struct_espeak_VOICE___SIZE = 24; // %struct.espeak_VOICE var $struct_espeak_VOICE___FLATTENER = [0,4,8,12,13,14,15,16,20]; var $struct_wavegen_peaks_t___SIZE = 80; // %struct.wavegen_peaks_t var $struct_wavegen_peaks_t___FLATTENER = [0,4,8,12,16,24,32,40,48,56,64,72]; var $struct_RESONATOR___SIZE = 40; // %struct.RESONATOR var $struct_WGEN_DATA___SIZE = 64; // %struct.WGEN_DATA var $struct_sonicStreamStruct___SIZE = 88; // %struct.sonicStreamStruct var $struct_klatt_frame_t___SIZE = 288; // %struct.klatt_frame_t var $struct_klatt_frame_t___FLATTENER = [0,4,8,48,88,128,168,172,176,180,184,188,192,196,200,204,208,248]; var $struct_klatt_global_t___SIZE = 2748; // %struct.klatt_global_t var $struct_klatt_global_t___FLATTENER = [0,4,8,12,16,20,24,28,32,36,40,44,48,52,56,64,72,80,88,96,104,112,120,128,136,144,152,160,164,172,176,180,184,188,1468]; var $struct_resonator_t___SIZE = 64; // %struct.resonator_t var $struct_klatt_peaks_t___SIZE = 80; // %struct.klatt_peaks_t var $struct_klatt_peaks_t___FLATTENER = [0,4,8,12,16,24,32,40,48,56,64,72]; var $struct_frame_t_199___SIZE = 64; // %struct.frame_t.199 var $struct_frame_t_199___FLATTENER = [0,2,16,17,18,26,32,35,39,44,49,56,63]; var $struct_stat___SIZE = 80; // %struct.stat var $struct_stat___FLATTENER = [0,8,12,16,20,24,28,36,40,44,48,52,56,60,64,68,72]; var $struct_PARAM_STACK___SIZE = 64; // %struct.PARAM_STACK var $struct_PHONEME_TAB_LIST___SIZE = 48; // %struct.PHONEME_TAB_LIST var $struct_PHONEME_TAB_LIST___FLATTENER = [0,32,36,40,44]; var $struct_PHONEME_TAB_11___SIZE = 16; // %struct.PHONEME_TAB.11 var $struct_PHONEME_TAB_11___FLATTENER = [0,4,8,10,11,12,13,14,15]; var $struct_RGROUP___SIZE = 28; // %struct.RGROUP var $struct_RGROUP___FLATTENER = [0,16,20,24]; var $struct_WORD_TAB___SIZE = 12; // %struct.WORD_TAB var $struct_WORD_TAB___FLATTENER = [0,4,6,8,9,10]; var $struct_PHONEME_TAB_LIST_25___SIZE = 48; // %struct.PHONEME_TAB_LIST.25 var $struct_PHONEME_TAB_LIST_25___FLATTENER = [0,32,36,40,44]; var $struct_WORD_TAB_29___SIZE = 12; // %struct.WORD_TAB.29 var $struct_WORD_TAB_29___FLATTENER = [0,4,6,8,9,10]; var $struct_Translator_33___SIZE = 8328; // %struct.Translator.33 var $struct_Translator_33___FLATTENER = [0,280,284,288,292,332,632,652,656,660,668,676,692,696,700,704,708,964,968,1000,1048,1052,1056,5152,5256,6280,6792,7272,7752,7756,8012,8268,8272,8276,8280,8284,8288,8292,8296,8300,8304,8308,8312,8316,8320,8324]; var $struct_LANGUAGE_OPTIONS_32___SIZE = 280; // %struct.LANGUAGE_OPTIONS.32 var $struct_LANGUAGE_OPTIONS_32___FLATTENER = [0,4,8,12,16,20,24,100,176,180,184,188,192,196,200,204,208,212,216,220,224,228,232,240,244,248,249,250,251,252,256,260,264,268,272,276]; var $struct_TONE_NUCLEUS___SIZE = 16; // %struct.TONE_NUCLEUS var $struct_TONE_NUCLEUS___FLATTENER = [0,1,2,3,4,5,8,12,13,14]; var $struct_PARAM_STACK_54___SIZE = 64; // %struct.PARAM_STACK.54 var $struct_FMT_PARAMS___SIZE = 48; // %struct.FMT_PARAMS var $struct_FMT_PARAMS_111___SIZE = 48; // %struct.FMT_PARAMS.111 var $struct_SPECT_SEQ___SIZE = 1104; // %struct.SPECT_SEQ var $struct_SPECT_SEQ___FLATTENER = [0,2,3,4]; var $struct_frame_t2___SIZE = 44; // %struct.frame_t2 var $struct_frame_t2___FLATTENER = [0,2,16,17,18,26,32,35,39]; var $struct_SPECT_SEQK___SIZE = 1604; // %struct.SPECT_SEQK var $struct_SPECT_SEQK___FLATTENER = [0,2,3,4]; var $struct_pollfd___SIZE = 8; // %struct.pollfd var $struct_pollfd___FLATTENER = [0,4,6]; var $struct_dirent___SIZE = 1040; // %struct.dirent var $struct_dirent___FLATTENER = [0,4,1028,1032,1036]; var $struct_getopt_data___SIZE = 20; // %struct.getopt_data var _path_home; var _filetype; var _wavefile; var _uri_callback; var _phoneme_callback; var _f_wave; var _quiet; var _samples_total; var _samples_split; var _wavefile_count; var _end_of_sentence; var _voice_pcnt; var __impure_ptr; var __ZZ13DisplayVoicesP7__sFILEPcE7genders; var __str1; var __str3; var __str4; var __str5; var __ZZ4mainE12long_options; var __str6; var __str7; var __str8; var __str9; var __str10; var __str11; var __str12; var __str13; var __str14; var __str15; var __str16; var __str17; var __str18; var __str19; var __str21; var __str23; var __str25; var __str27; var __str28; var __str29; var __str30; var __ZZL12OpenWaveFilePKciE8wave_hdr; var __str32; var __str33; var __str35; var __str36; var __str37; var __str38; var __str39; var __str40; var __str41; var __ZL5f_log; var __str42; var __str143; var __str244; var __str345; var __str446; var __str547; var __str648; var _mnem_rules; var __str749; var __str850; var __str951; var __str1052; var __str1153; var __str1254; var __str1355; var __str1456; var __str1557; var __str1658; var __str1759; var __str1860; var __str1961; var __str2062; var __str2163; var __str2264; var __str2365; var __str2466; var __str2567; var __str2668; var __str2769; var __str2870; var __str2971; var __str3072; var __str3173; var __str3274; var __str3375; var __str3476; var __str3577; var __str3678; var __str3779; var __str3880; var __str3981; var __str4082; var __str4183; var __str4284; var __str43; var __str44; var __str45; var __str46; var __str47; var __str48; var __str49; var __str50; var __str51; var __str52; var __str53; var __str54; var __str55; var __str56; var __str57; var _mnem_flags; var __ZZ22print_dictionary_flagsPjE3buf; var __str59; var __ZZ10DecodeRulePKciPciE6output; var __ZZ10DecodeRulePKciPciE7symbols; var __ZZ10DecodeRulePKciPciE10symbols_lg; var __str60; var __str61; var __str62; var __str64; var __str65; var __ZL11error_count; var __ZL21error_need_dictionary; var __ZL19letterGroupsDefined; var __ZL10debug_flag; var __str66; var __str67; var __str69; var __str71; var __str72; var __str73; var __str74; var __str75; var __str76; var __str77; var __str78; var __ZL7linenum; var __ZL10group_name; var __str79; var __ZL9group3_ix; var __str81; var __str82; var __str83; var __str84; var __str85; var __str89; var __ZL9rule_cond; var __ZL8rule_pre; var __ZL9rule_post; var __ZL10rule_match; var __ZL13rule_phonemes; var __str90; var __str91; var __str92; var __str93; var __str94; var __str95; var __ZZL16copy_rule_stringPcRiE6outbuf; var __ZZL16copy_rule_stringPcRiE10next_state; var __ZZL16copy_rule_stringPcRiE16lettergp_letters; var __str97; var __str98; var __str99; var __str100; var __str101; var __str102; var __str103; var __ZL11hash_chains; var __ZL11hash_counts; var __ZL9text_mode_b; var __str104; var __str106; var __str107; var __ZZL12compile_linePcS_PiE10nullstring; var __str108; var __str109; var __str110; var __str111; var __str112; var __str113; var __str114; var __str115; var _dictionary_skipwords; var _dictionary_name; var __ZL13remove_accent; var __str116; var __str2118; var __str3119; var __str4120; var __str5121; var __str7123; var _ipa1; var __str8124; var __str9125; var __ZL15stress_phonemes; var __ZZ13SetWordStressP10TranslatorPcPjiiE15consonant_types; var __ZZ13SetWordStressP10TranslatorPcPjiiE8guess_ru; var __ZZ13SetWordStressP10TranslatorPcPjiiE10guess_ru_v; var __ZZ13SetWordStressP10TranslatorPcPjiiE10guess_ru_t; var __ZZ14TranslateRulesP10TranslatorPcS1_iS1_iPjE9str_pause; var __str10126; var __str11127; var __ZL13diereses_list; var __ZZ14LookupDictListP10TranslatorPPcS1_PjiP8WORD_TABE16word_replacement; var __str15131; var __str16132; var __ZZ11LookupFlagsP10TranslatorPKcE5flags; var __ZZ12RemoveEndingP10TranslatorPciS1_E6ending; var __ZZ12RemoveEndingP10TranslatorPciS1_E16add_e_exceptions; var __str17133; var __ZZ12RemoveEndingP10TranslatorPciS1_E15add_e_additions; var __str18134; var __str19135; var __str20136; var __str21137; var __str22138; var __str23139; var __str24140; var __str25141; var __str27143; var __str28144; var __str29145; var __str30146; var __str31147; var __ZZL9MatchRuleP10TranslatorPPcS1_iS1_P11MatchRecordiiE4best; var __str32148; var __str34150; var _env_fall; var _env_rise; var _env_frise; var __ZL11env_r_frise; var __ZL10env_frise2; var __ZL12env_r_frise2; var __ZL12env_risefall; var __ZL13env_fallrise3; var __ZL13env_fallrise4; var __ZL9env_fall2; var __ZL9env_rise2; var __ZL16env_risefallrise; var _envelope_data; var __ZL18tone_nucleus_table; var _punctuation_to_tone; var _n_tunes; var _tunes; var __ZL12syllable_tab; var __ZL8no_tonic_b; var __ZL15tone_head_table; var __ZL10number_pre; var __ZL10tone_posn2; var __ZL9tone_posn; var __ZL11number_tail; var __ZL14tone_pitch_env; var __ZZL18calc_pitch_segmentiiP9TONE_HEADP12TONE_NUCLEUSiiE12continue_tab; var __ZL8min_drop; var __ZL7drops_0; var __ZL5oflow; var __ZL9oflow_emf; var __ZL10oflow_less; var __ZL12last_primary; var _namedata; var __ZL7f_input; var _p_textinput; var _p_wchar_input; var __ZL10ungot_word; var _count_characters; var __ZL10ssml_stack; var __ZL16current_voice_id; var _param_stack; var _param_defaults; var _walpha_tab; var __ZL10ungot_char; var __ZL12end_of_input_b; var __str167; var __str1168; var __str2169; var __str3170; var __str4171; var __str5172; var __str6173; var __str7174; var __str8175; var __str9176; var __str10177; var __str11178; var __str12179; var __str13180; var __str14181; var __str15182; var __str16183; var __str17184; var __str18185; var __str19186; var __str20187; var __str21188; var __str22189; var __str23190; var __str24191; var __str25192; var __str26193; var __str27194; var __str28195; var __str29196; var __str30197; var __str31198; var __ZL8ssmltags; var __ZL10n_namedata; var __ZL11namedata_ix; var __str32199; var __str33200; var __str34201; var __str35202; var __str36203; var __str37204; var __ZL18xml_char_mnemonics; var __ZZ10ReadClauseP10TranslatorP7__sFILEPcPsPiiS5_S3_E12ungot_string; var __ZZ10ReadClauseP10TranslatorP7__sFILEPcPsPiiS5_S3_E15ungot_string_ix; var __ZL19clear_skipping_text_b; var __ZL11ungot_char2; var __ZL19ssml_ignore_l_angle; var __str38205; var __ZL10sayas_mode; var __ZL11ignore_text_b; var __ZL11punct_chars; var __ZL16punct_attributes; var __str41208; var __ZL12chars_ignore; var __str42209; var __ZL10audio_text_b; var __ZL17speech_parameters; var __ZL12n_ssml_stack; var __ZL13n_param_stack; var __ZL7xmlbase; var __ZZL14LookupCharNameP10TranslatoriiE3buf; var __str47214; var __str48215; var __str49216; var __ZZL13WordToString2jE3buf; var __str50217; var __str51218; var __str52219; var __str53220; var __str54221; var __str55222; var __str57224; var __str58225; var __str59226; var __str60227; var __ZZL14ProcessSsmlTagPwPcRiiiE10mnem_punct; var __str61228; var __str62229; var __str63230; var __ZZL14ProcessSsmlTagPwPcRiiiE13mnem_capitals; var __str64231; var __str65232; var __str66233; var __ZZL14ProcessSsmlTagPwPcRiiiE17mnem_interpret_as; var __str68235; var __str69236; var __str70237; var __str71238; var __str72239; var __ZZL14ProcessSsmlTagPwPcRiiiE17mnem_sayas_format; var __str73240; var __ZZL14ProcessSsmlTagPwPcRiiiE10mnem_break; var __str74241; var __str75242; var __str76243; var __str77244; var __ZZL14ProcessSsmlTagPwPcRiiiE13mnem_emphasis; var __str78245; var __str79246; var __ZZL14ProcessSsmlTagPwPcRiiiE12prosody_attr; var __str80247; var __str81248; var __str82249; var __ZL22ignore_if_self_closing; var __str83250; var __str84251; var __str85252; var __str86253; var __str87254; var __ZZL14ProcessSsmlTagPwPcRiiiE23emphasis_to_pitch_range; var __ZZL14ProcessSsmlTagPwPcRiiiE18emphasis_to_volume; var __str88255; var __str89256; var __str90257; var __str91258; var __ZL11sayas_start; var __str92259; var __str94261; var __str95262; var __str96263; var __str97264; var __str98265; var __str99266; var __ZZL14ProcessSsmlTagPwPcRiiiE11break_value; var __str100267; var __str101268; var __str102269; var __ZZL18GetVoiceAttributesPwiE11mnem_gender; var __str105272; var __str106273; var __str108275; var __ZZL14LoadSoundFile2PKcE4slot; var __str111278; var __str112279; var __str113280; var __str114281; var __ZZL14ReplaceKeyNamePciRiE8keynames; var __ZZL19SetProsodyParameteriPwP11PARAM_STACKE11mnem_volume; var __str115282; var __str116283; var __str117; var __str118; var __str119; var __ZZL19SetProsodyParameteriPwP11PARAM_STACKE9mnem_rate; var __str120; var __str121; var __str122; var __str123; var __ZZL19SetProsodyParameteriPwP11PARAM_STACKE10mnem_pitch; var __str124; var __str125; var __str126; var __str127; var __ZZL19SetProsodyParameteriPwP11PARAM_STACKE10mnem_range; var __ZZL19SetProsodyParameteriPwP11PARAM_STACKE9mnem_tabs; var __ZZL17ProcessParamStackPcRiE10cmd_letter; var __str128; var __ZZL16GetSsmlAttributePwPKcE5empty; var __ZZL4GetCvE6ungot2; var __ZZL4GetCvE5mask2; var __ZL6speed1; var __ZL6speed2; var __ZL6speed3; var __ZL12speed_lookup; var __ZL14wav_factor_350; var __ZL16pause_factor_350; var __ZZ11CalcLengthsP10TranslatorE14more_syllables; var __str294; var __ZL18letter_accents_0e0; var __ZL18letter_accents_250; var __ZL13non_ascii_tab; var __ZL11accents_tab; var __str297; var __str1298; var __str2299; var __ZZ12LookupLetterP10TranslatorjiPciE13single_letter; var __str5302; var __str6303; var __str7304; var __str8305; var __str9306; var __str10307; var __str11308; var __str12309; var __ZZ14TranslateRomanP10TranslatorPcS1_P8WORD_TABE12roman_values; var __str13310; var __str14311; var __ZZL17TranslateNumber_1P10TranslatorPcS1_PjP8WORD_TABiE9str_pause; var __ZL14n_digit_lookup; var __ZL12digit_lookup; var __ZL14number_control; var __ZL23speak_missing_thousands; var __ZL11ph_ordinal2; var __str15312; var __str16313; var __str17314; var __str18315; var __str19316; var __str20317; var __str21318; var __str22319; var __str23320; var __str24321; var __str25322; var __str26323; var __str27324; var __str28325; var __str29326; var __str30327; var __str31328; var __str32329; var __str33330; var __str35332; var __str36333; var __str37334; var __str39336; var __str40337; var __str41338; var __str42339; var __str43340; var __str44341; var __str45342; var __str46343; var __str47344; var __str48345; var __str49346; var __str50347; var __str51348; var __str52349; var __str53350; var __str54351; var __str55352; var __str56353; var __str57354; var __str58355; var __str59356; var __str60357; var __str61358; var __str62359; var __str63360; var __str64361; var __str65362; var __str66363; var __str67364; var __str68365; var __str69366; var __str70367; var __str71368; var __str72369; var __str73370; var __str74371; var __str75372; var __str76373; var __str77374; var __str78375; var _option_mbrola_phonemes; var __ZL10mbrola_tab; var __ZL15mbr_name_prefix; var __str382; var __str1383; var __str2384; var __str3385; var __str4386; var __ZL14mbrola_control; var __ZZ15MbrolaTranslateP12PHONEME_LISTiiP7__sFILEE4phix; var __ZZ15MbrolaTranslateP12PHONEME_LISTiiP7__sFILEE11embedded_ix; var __ZZ15MbrolaTranslateP12PHONEME_LISTiiP7__sFILEE10word_count; var __str6388; var __str8390; var __str9391; var __str10392; var __str11393; var __str12394; var __ZZ10MbrolaFilliiE9n_samples; var __ZZL10WritePitchiiiiiE6output; var __str13395; var __str14396; var __str15397; var __str16398; var __ZZL10GetMbrNameP12PHONEME_LISTP11PHONEME_TABS2_S2_PiS3_S3_E4mnem; var __str399; var _version_string; var _version_phdata; var _option_device_number; var _f_logespeak; var _logging_type; var _n_phoneme_tab; var _current_phoneme_table; var _phoneme_tab; var _phoneme_tab_flags; var _phoneme_index; var _phondata_ptr; var _wavefile_data; var __ZL16phoneme_tab_data; var _n_phoneme_tables; var _phoneme_tab_list; var _phoneme_tab_number; var _wavefile_ix; var _wavefile_amp; var _wavefile_ix2; var _wavefile_amp2; var _seq_len_adjust; var _vowel_transition; var _vowel_transition0; var _vowel_transition1; var __str1412; var __str2413; var __str3414; var __str4415; var __ZZ11LookupSpectP11PHONEME_TABiP10FMT_PARAMSPiP12PHONEME_LISTE10frames_buf; var __str5416; var __str7418; var __str9420; var __str10421; var __str11422; var __str13424; var __str15426; var __str16427; var _this_ph_data; var __ZZL13NumInstnWordsPtE7n_words; var __ZZL18InterpretConditionP10TranslatoriP12PHONEME_LISTiE11ph_position; var __ZZL15StressConditionP10TranslatorP12PHONEME_LISTiiE15condition_level; var __str17428; var __str18429; var __str19430; var _n_phoneme_list; var _phoneme_list; var _mbrola_delay; var _mbrola_name; var _speed; var __ZL9new_voice; var _n_soundicon_tab; var _soundicon_tab; var __ZZ12WordToStringjE3buf; var __ZL14last_pitch_cmd; var __ZL12last_amp_cmd; var __ZL10last_frame; var __ZL15syllable_centre; var __ZZ18FormantTransition2P10frameref_tRijjP11PHONEME_TABiE10vcolouring; var __ZL10modn_flags; var __ZZ8DoSpect2P11PHONEME_TABiP10FMT_PARAMSP12PHONEME_LISTiE9wave_flag_b; var __ZL13fmt_amplitude; var __ZL10last_wcmdq; var __ZL12pitch_length; var __ZL10amp_length; var __ZZ8GenerateP12PHONEME_LISTPiiE2ix; var __ZZ8GenerateP12PHONEME_LISTPiiE11embedded_ix; var __ZZ8GenerateP12PHONEME_LISTPiiE10word_count; var __ZZ8GenerateP12PHONEME_LISTPiiE8sourceix; var __ZL14syllable_start; var __ZL12syllable_end; var __ZL8timer_on_b; var __ZL6paused_b; var __ZZ15SpeakNextClauseP7__sFILEPKviE6f_text; var __ZZ15SpeakNextClauseP7__sFILEPKviE6p_text; var __str459; var __str1460; var __ZZL13set_frame_rmsP7frame_tiE8sqrt_tab; var __ZZL10AllocFramevE2ix; var __ZZL10AllocFramevE10frame_pool; var _translator; var _translator2; var __ZL20translator2_language; var _f_trans; var _option_tone2; var _option_tone_flags; var _option_phonemes; var _option_phoneme_events; var _option_quiet; var _option_endpause; var _option_capitals; var _option_punctuation; var _option_sayas; var _option_ssml; var _option_phoneme_input; var _option_phoneme_variants; var _option_wordgap; var _skip_sentences; var _skip_words; var _skip_characters; var _skip_marker; var _skipping_text; var _end_character_position; var _count_sentences; var _count_words; var _clause_start_char; var _clause_start_word; var _new_sentence; var _pre_pause; var _word_phonemes; var _n_ph_list2; var _ph_list2; var _option_punctlist; var _ctrl_embedded; var _option_multibyte; var _option_linelength; var _embedded_list; var _n_replace_phonemes; var _replace_phonemes; var __ZL10ISO_8859_1; var __ZL10ISO_8859_2; var __ZL10ISO_8859_3; var __ZL10ISO_8859_4; var __ZL10ISO_8859_5; var __ZL10ISO_8859_7; var __ZL10ISO_8859_9; var __ZL11ISO_8859_14; var __ZL6KOI8_R; var __ZL5ISCII; var _charsets; var __ZL15length_mod_tabs; var __ZZ7IsAlphajE18extra_indic_alphas; var __ZL8brackets; var __ZZ8utf8_outjPcE4code; var __ZZ8utf8_in2PiPKciE4mask; var __str543; var __str1544; var __ZZ13TranslateWordP10TranslatorPciP8WORD_TABE7word_zz; var __ZZ13TranslateWordP10TranslatorPciP8WORD_TABE7word_iz; var __ZZ13TranslateWordP10TranslatorPciP8WORD_TABE7word_ss; var __str2545; var __str4547; var __str5548; var __str6549; var __ZL18any_stressed_words_b; var __ZZ15TranslateClauseP10TranslatorP7__sFILEPKvPiPPcE17voice_change_name; var __ZL11embedded_ix; var __ZL13embedded_read; var __ZL6source; var __str7550; var __str8551; var __ZL16max_clause_pause; var __ZL13option_sayas2; var __ZL18count_sayas_digits; var __ZL6breaks; var __ZL13word_emphasis_b; var __ZL15option_emphasis; var __ZL13embedded_flag_b; var __str9552; var __str10553; var __str11554; var __ZZL13TranslateCharP10TranslatorPcijjPiE20hangul_compatibility; var __ZZL14SubstituteCharP10TranslatorjjPiE11ignore_next_b; var __str12555; var __ZL14length_mods_en; var __ZL15length_mods_en0; var __ZL17length_mods_equal; var __str580; var __str1581; var __str2582; var __str3583; var __str4584; var __ZL14mbr_samplerate; var __ZL14mbr_voice_path; var __ZL10mbr_volume; var __ZL9mbr_state; var __ZL7mbr_pid; var __ZL10mbr_cmd_fd; var __str5585; var __ZL12mbr_audio_fd; var __ZL12mbr_errorbuf; var __ZL12mbr_error_fd; var __str7587; var __str8588; var __str9589; var __str10590; var __str11591; var __str12592; var __str13593; var __str14594; var __str15595; var __str16596; var __str17597; var __ZL21mbr_pending_data_head; var __ZL21mbr_pending_data_tail; var __str18598; var __str19599; var __str20600; var __str21601; var __ZL13mbr_proc_stat; var __str22602; var __str23603; var __str24604; var __str25605; var __str27607; var __str28608; var __str30610; var __str31611; var __str32612; var __str33613; var __str34614; var __str35615; var __ZZ15SetIndicLettersP10TranslatorE15dev_consonants2; var __ZZ16SelectTranslatorPKcE17stress_lengths_fr; var __ZZ16SelectTranslatorPKcE14stress_amps_fr; var __ZZ16SelectTranslatorPKcE14stress_amps_sk; var __ZZ16SelectTranslatorPKcE17stress_lengths_sk; var __ZZ16SelectTranslatorPKcE17stress_lengths_ta; var __ZZ16SelectTranslatorPKcE14stress_amps_ta; var __ZZ16SelectTranslatorPKcE17stress_lengths_af; var __ZZ16SelectTranslatorPKcE17stress_lengths_bn; var __ZZ16SelectTranslatorPKcE14stress_amps_bn; var __ZZ16SelectTranslatorPKcE17stress_lengths_cy; var __ZZ16SelectTranslatorPKcE14stress_amps_cy; var __ZZ16SelectTranslatorPKcE17stress_lengths_da; var __ZZ16SelectTranslatorPKcE17stress_lengths_de; var __ZZ16SelectTranslatorPKcE14stress_amps_de; var __ZZ16SelectTranslatorPKcE17stress_lengths_en; var __str630; var __ZZ16SelectTranslatorPKcE17stress_lengths_el; var __ZZ16SelectTranslatorPKcE14stress_amps_el; var __ZZ16SelectTranslatorPKcE9el_vowels; var __ZZ16SelectTranslatorPKcE10el_fvowels; var __ZZ16SelectTranslatorPKcE12el_voiceless; var __ZZ16SelectTranslatorPKcE13el_consonants; var __ZZ16SelectTranslatorPKcE18el_char_apostrophe; var __ZZ16SelectTranslatorPKcE17stress_lengths_eo; var __ZZ16SelectTranslatorPKcE14stress_amps_eo; var __ZZ16SelectTranslatorPKcE18eo_char_apostrophe; var __ZZ16SelectTranslatorPKcE17stress_lengths_es; var __ZZ16SelectTranslatorPKcE14stress_amps_es; var __ZZ16SelectTranslatorPKcE20ca_punct_within_word; var __ZZ16SelectTranslatorPKcE17stress_lengths_eu; var __ZZ16SelectTranslatorPKcE14stress_amps_eu; var __ZZ16SelectTranslatorPKcE14stress_amps_fi; var __ZZ16SelectTranslatorPKcE17stress_lengths_fi; var __ZZ16SelectTranslatorPKcE17stress_lengths_hi; var __ZZ16SelectTranslatorPKcE14stress_amps_hi; var __ZZ16SelectTranslatorPKcE14stress_amps_hr; var __ZZ16SelectTranslatorPKcE17stress_lengths_hr; var __ZZ16SelectTranslatorPKcE17stress_lengths_sr; var __ZL22replace_cyrillic_latin; var __ZZ16SelectTranslatorPKcE14stress_amps_hu; var __ZZ16SelectTranslatorPKcE17stress_lengths_hu; var __ZZ16SelectTranslatorPKcE17stress_lengths_hy; var __ZZ16SelectTranslatorPKcE9hy_vowels; var __ZZ16SelectTranslatorPKcE13hy_consonants; var __ZZ16SelectTranslatorPKcE17stress_lengths_id; var __ZZ16SelectTranslatorPKcE14stress_amps_id; var __ZZ16SelectTranslatorPKcE17stress_lengths_is; var __ZZ16SelectTranslatorPKcE16is_lettergroup_B; var __str1631; var __str2632; var __ZZ16SelectTranslatorPKcE17stress_lengths_it; var __ZZ16SelectTranslatorPKcE14stress_amps_it; var __ZZ16SelectTranslatorPKcE18stress_lengths_jbo; var __ZZ16SelectTranslatorPKcE21jbo_punct_within_word; var __ZZ16SelectTranslatorPKcE9ka_vowels; var __ZZ16SelectTranslatorPKcE13ka_consonants; var __ZZ16SelectTranslatorPKcE10ko_ivowels; var __ZZ16SelectTranslatorPKcE9ko_voiced; var __ZZ16SelectTranslatorPKcE14stress_amps_ku; var __ZZ16SelectTranslatorPKcE17stress_lengths_ku; var __ZZ16SelectTranslatorPKcE14stress_amps_lv; var __ZZ16SelectTranslatorPKcE17stress_lengths_lv; var __ZZ16SelectTranslatorPKcE15vowels_cyrillic; var __ZZ16SelectTranslatorPKcE14stress_amps_mk; var __ZZ16SelectTranslatorPKcE17stress_lengths_mk; var __ZZ16SelectTranslatorPKcE17stress_lengths_nl; var __str3633; var __ZZ16SelectTranslatorPKcE17stress_lengths_no; var __ZZ16SelectTranslatorPKcE14stress_amps_om; var __ZZ16SelectTranslatorPKcE17stress_lengths_om; var __ZZ16SelectTranslatorPKcE17stress_lengths_pl; var __ZZ16SelectTranslatorPKcE14stress_amps_pl; var __ZZ16SelectTranslatorPKcE17stress_lengths_pt; var __ZZ16SelectTranslatorPKcE14stress_amps_pt; var __str4634; var __ZZ16SelectTranslatorPKcE17stress_lengths_ro; var __ZZ16SelectTranslatorPKcE14stress_amps_ro; var __str5635; var __ZZ16SelectTranslatorPKcE17stress_lengths_sq; var __ZZ16SelectTranslatorPKcE14stress_amps_sq; var __ZZ16SelectTranslatorPKcE14stress_amps_sv; var __ZZ16SelectTranslatorPKcE17stress_lengths_sv; var __ZZ16SelectTranslatorPKcE17stress_lengths_sw; var __ZZ16SelectTranslatorPKcE14stress_amps_sw; var __ZZ16SelectTranslatorPKcE14stress_amps_tr; var __ZZ16SelectTranslatorPKcE17stress_lengths_tr; var __ZZ16SelectTranslatorPKcE17stress_lengths_vi; var __ZZ16SelectTranslatorPKcE14stress_amps_vi; var __ZZ16SelectTranslatorPKcE9vowels_vi; var __ZZ16SelectTranslatorPKcE17stress_lengths_zh; var __ZZ16SelectTranslatorPKcE14stress_amps_zh; var __ZZL18Translator_RussianP10TranslatorE14stress_amps_ru; var __ZZL18Translator_RussianP10TranslatorE17stress_lengths_ru; var __ZZL18Translator_RussianP10TranslatorE11ru_ivowels2; var __ZZL18SetCyrillicLettersP10TranslatorE9ru_vowels; var __ZZL18SetCyrillicLettersP10TranslatorE13ru_consonants; var __ZZL18SetCyrillicLettersP10TranslatorE7ru_soft; var __ZZL18SetCyrillicLettersP10TranslatorE7ru_hard; var __ZZL18SetCyrillicLettersP10TranslatorE10ru_nothard; var __ZZL18SetCyrillicLettersP10TranslatorE9ru_voiced; var __ZZL18SetCyrillicLettersP10TranslatorE10ru_ivowels; var __ZL8pairs_ru; var __ZZL13NewTranslatorvE12stress_amps2; var __ZZL13NewTranslatorvE15stress_lengths2; var __ZZL13NewTranslatorvE13empty_wstring; var __ZZL13NewTranslatorvE13punct_in_word; var __ZZL13NewTranslatorvE13default_tunes; var __str6636; var __str7637; var __str8638; var __str9639; var __str10640; var __str11641; var __str12642; var __str13643; var __str646; var __str1647; var __str2648; var _genders; var _tone_points; var _formant_rate; var _voice_selected; var __str3653; var __str4654; var __ZL11options_tab; var __str5655; var __str6656; var __str7657; var __str8658; var __str9659; var __str10660; var __str11661; var __str12662; var __str13663; var __str14664; var __str15665; var __str16666; var __str17667; var __str18668; var __str19669; var __str20670; var __str21671; var __str22672; var __str23673; var __str24674; var __str25675; var __str26676; var __str27677; var __str28678; var __str29679; var __str30680; var __str31681; var __str32682; var __str33683; var __str34684; var __str35685; var __str36686; var __str37687; var __str38688; var __str39689; var __str40690; var __str41691; var __str42692; var __str43693; var __ZL11keyword_tab; var __ZL15variants_either; var __ZL13variants_male; var __ZL15variants_female; var _variant_lists; var __ZL9voicedata; var _voice; var __str44696; var __ZZ10VoiceResetiE15default_heights; var __ZZ10VoiceResetiE14default_widths; var __ZZ10VoiceResetiE13breath_widths; var __ZL18formant_rate_22050; var __ZZ9LoadVoicePKciE16voice_identifier; var __ZZ9LoadVoicePKciE10voice_name; var __ZZ9LoadVoicePKciE15voice_languages; var __str45697; var __str46698; var __str47699; var __str48700; var __str49701; var __str50702; var __str51703; var __str52704; var __str53705; var __str54706; var __str55707; var __str56708; var __str57709; var __str58710; var __str59711; var __str60712; var __str61713; var __str62714; var __str63715; var __str64716; var __str65717; var __str66718; var __str67719; var __str68720; var __str69721; var __ZL13n_voices_list; var __ZL11voices_list; var __str70722; var __ZZ11SelectVoiceP12espeak_VOICEPiE14voice_variants; var __ZZ11SelectVoiceP12espeak_VOICEPiE8voice_id; var __ZZ11SelectVoiceP12espeak_VOICEPiE3buf; var __str71723; var __ZZ14SetVoiceByNamePKcE3buf; var __ZZ17espeak_ListVoicesE6voices; var __str72724; var __ZL15len_path_voices; var __str73725; var __str74726; var __str75727; var __ZZL23ExtractVoiceVariantNamePciE12variant_name; var __str76728; var __str77729; var __str78730; var __str79731; var __str80732; var __str81733; var __str82734; var _sin_tab; var _wvoice; var _f_log; var _option_waveout; var _option_log_frames; var _embedded_value; var _samplerate; var _samplerate_native; var __ZL5peaks; var _echo_head; var _echo_tail; var _echo_amp; var _echo_buf; var __ZL7rbreath; var _wdata; var __ZL13amplitude_env; var _out_ptr; var _out_start;