diff --git a/dictsource/kg_list b/dictsource/kg_list
new file mode 100644
index 00000000..c1a37d82
--- /dev/null
+++ b/dictsource/kg_list
@@ -0,0 +1,46 @@
+// ***************************************************************************/
+// * Kyrgyz Language kg kg_list *
+// * Original Author Joshua Meyer 7-1-2016 *
+// * Contact info: joshua.richard.meyer@gmail.com *
+// ***************************************************************************/
+// * This program is free software; you can redistribute it and/or modify *
+// * it under the terms of the GNU General Public License as published by *
+// * the Free Software Foundation; either version 3 of the License, or *
+// * (at your option) any later version. *
+// * *
+// * This program is distributed in the hope that it will be useful, *
+// * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+// * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+// * GNU General Public License for more details. *
+// * *
+// * You should have received a copy of the GNU General Public License *
+// * along with this program; if not, see: *
+// * . *
+// ***************************************************************************/
+
+//
+// General categories come from Azerbaijani az_list
+
+
+// Numbers
+_1 b'ir
+_2 ek'i
+_3 'ytS
+_4 t'Ort
+_5 b'eS
+
+
+
+// Function words
+
+// personal pronouns
+
+// possessive pronouns
+
+// conjunctions
+
+// prepositions
+
+// postpositions
+
+// Character names
\ No newline at end of file
diff --git a/dictsource/kg_rules b/dictsource/kg_rules
new file mode 100644
index 00000000..ff31d98b
--- /dev/null
+++ b/dictsource/kg_rules
@@ -0,0 +1,163 @@
+// ***************************************************************************/
+// * Kyrgyz Language kg kg_rules *
+// * Original Author Joshua Meyer 7-1-2016 *
+// * Contact info: joshua.richard.meyer@gmail.com *
+// ***************************************************************************/
+// * This program is free software; you can redistribute it and/or modify *
+// * it under the terms of the GNU General Public License as published by *
+// * the Free Software Foundation; either version 3 of the License, or *
+// * (at your option) any later version. *
+// * *
+// * This program is distributed in the hope that it will be useful, *
+// * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+// * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+// * GNU General Public License for more details. *
+// * *
+// * You should have received a copy of the GNU General Public License *
+// * along with this program; if not, see: *
+// * . *
+// ***************************************************************************/
+
+// Stress rule: Right-most vowel
+
+// Letter groups: // are these getting defined?
+// A any vowel: а о у ы э е ё и ю я ө ү // all vowels
+// B back vowels: а о у ы ё ю я // back vowels
+// C any consonant: п б д т к г х ш щ ж з с ц ч й л м н ң ф в р ъ ь // all consonants
+// F front vowels: э е и ө ү // front vowels
+
+.replace
+ ё йо // replace the glide+vowel characters
+ ю йу
+ я йа
+
+.L01 а о у ы ё ю я // back vowels
+.L02 э е и ө ү // front vowels
+.L03 п б д т к г х ш щ ж з с ц ч й л м н ң ф в р ъ ь // any consonant
+.L04 а о у ы ё ю я э е и ө ү // all vowels
+
+.group а
+ а a
+ аа a:
+
+.group о
+ о o
+ оо o:
+
+.group у
+ у u
+ уу u:
+
+.group ы
+ ы I
+ ыы I:
+
+.group и
+ и i
+ ии i:
+
+.group ө
+ ө O
+ өө O:
+
+.group ү
+ ү y
+ үү y:
+
+.group е
+ е e
+ ее e:
+
+.group э
+ э e
+ ээ e:
+
+.group к
+ к (L01 q // syllable onset /k/ followed by back vowel (MAX-ONSET)
+ к (L02 k // syllable onset /k/ followed by back vowel (MAX-ONSET)
+ L01) к (L03 q // syllable final /k/ preceded by back vowel
+ L02) к (L03 k // syllable final /k/ preceded by front vowel
+ L01) к (_ q // word final /k/ preceded by back vowel
+ L02) к (_ k // word final /k/ preceded by front vowel
+
+.group г
+ г (L01 G // syllable onset /g/ followed by back vowel (MAX-ONSET)
+ г (L02 g // syllable onset /g/ followed by back vowel (MAX-ONSET)
+ L01) г (L03 G // syllable final /g/ preceded by back vowel
+ L02) г (L03 g // syllable final /g/ preceded by front vowel
+ L01) г (_ G // word final /g/ preceded by back vowel
+ L02) г (_ g // word final /g/ preceded by front vowel
+
+.group л
+ л (L01 L // syllable onset /l/ followed by back vowel (MAX-ONSET)
+ л (L02 l // syllable onset /l/ followed by back vowel (MAX-ONSET)
+ L01) л (L03 L // syllable final /l/ preceded by back vowel
+ L02) л (L03 l // syllable final /l/ preceded by front vowel
+ L01) л (_ L // word final /l/ preceded by back vowel
+ L02) л (_ l // word final /l/ preceded by front vowel
+
+.group р
+ р (_ r // word final /r/ gets trilled
+ L04) р (L03 r // syllable final /r/ gets trilled
+ р * // all non-word final /r/ go to flap
+
+
+.group п
+ п p
+
+.group б
+ б b
+
+.group д
+ д d
+
+.group т
+ т t
+
+.group х
+ х X
+
+.group ш
+ ш S
+
+.group щ
+ щ S
+
+.group ж
+ ж dZ
+
+.group з
+ з z
+
+.group с
+ с s
+
+.group ц
+ ц ts
+
+.group ч
+ ч tS
+
+.group й
+ й j
+
+.group м
+ м m
+
+.group н
+ н n
+
+.group ң
+ ң N
+
+.group ф
+ ф f
+
+.group в
+ в v
+
+.group ъ
+ ъ j
+
+.group ь
+ ь j
diff --git a/espeak-data/voices/trk/kg b/espeak-data/voices/trk/kg
new file mode 100644
index 00000000..1cd1abc2
--- /dev/null
+++ b/espeak-data/voices/trk/kg
@@ -0,0 +1,2 @@
+name kyrgyz
+language kg
diff --git a/phsource/ph_kyrgyz b/phsource/ph_kyrgyz
new file mode 100644
index 00000000..1546a555
--- /dev/null
+++ b/phsource/ph_kyrgyz
@@ -0,0 +1,678 @@
+// ***************************************************************************/
+// * Kyrgyz Language kg ph_kyrgyz *
+// * Original Author Joshua Meyer 7-1-2016 *
+// * Contact info: joshua.richard.meyer@gmail.com *
+// ***************************************************************************/
+// * This program is free software; you can redistribute it and/or modify *
+// * it under the terms of the GNU General Public License as published by *
+// * the Free Software Foundation; either version 3 of the License, or *
+// * (at your option) any later version. *
+// * *
+// * This program is distributed in the hope that it will be useful, *
+// * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+// * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+// * GNU General Public License for more details. *
+// * *
+// * You should have received a copy of the GNU General Public License *
+// * along with this program; if not, see: *
+// * . *
+// ***************************************************************************/
+
+
+// ============ //
+// SHORT VOWELS //
+// ============ //
+
+
+phoneme a
+ ipa ɑ
+ vowel starttype #i endtype #i
+ length 200
+ FMT(vowel/0_3)
+endphoneme
+
+
+phoneme e
+ ipa e
+ vowel starttype #e endtype #e
+ length 170
+ FMT(vowel/e)
+endphoneme
+
+phoneme i
+ ipa i
+ vowel starttype #i endtype #i
+ length 170
+ IfNextVowelAppend(;)
+ FMT(vowel/i)
+endphoneme
+
+phoneme o
+ ipa o
+ vowel starttype #o endtype #o
+ length 200
+ FMT(vowel/o_8)
+endphoneme
+
+phoneme u
+ ipa u
+ vowel starttype #u endtype #u
+ length 200
+ FMT(vowel/u_bck)
+endphoneme
+
+phoneme I
+ ipa ɯ
+ vowel starttype #@ endtype #@
+ length 180
+ FMT(vowel/u#_7)
+endphoneme
+
+phoneme y
+ ipa y
+ vowel starttype #u endtype #u
+ length 180
+ FMT(vowel/y)
+endphoneme
+
+phoneme O
+ ipa oe
+ vowel starttype #@ endtype #@
+ length 150
+ FMT(vowel/oe)
+endphoneme
+
+
+// ============ //
+// LONG VOWELS //
+// ============ //
+
+
+phoneme a:
+ ipa ɑ:
+ vowel starttype #i endtype #i
+ length 325
+ FMT(vowel/0_3)
+endphoneme
+
+
+phoneme e:
+ ipa e:
+ vowel starttype #e endtype #e
+ length 300
+ FMT(vowel/e)
+endphoneme
+
+phoneme i:
+ ipa i:
+ vowel starttype #i endtype #i
+ length 300
+ IfNextVowelAppend(;)
+ FMT(vowel/i)
+endphoneme
+
+phoneme o:
+ ipa o:
+ vowel starttype #o endtype #o
+ length 325
+ FMT(vowel/o_8)
+endphoneme
+
+phoneme u:
+ ipa u:
+ vowel starttype #u endtype #u
+ length 325
+ FMT(vowel/u_bck)
+endphoneme
+
+phoneme I:
+ ipa ɯ:
+ vowel starttype #@ endtype #@
+ length 300
+ FMT(vowel/u#_7)
+endphoneme
+
+phoneme y:
+ ipa y:
+ vowel starttype #u endtype #u
+ length 275
+ FMT(vowel/y)
+endphoneme
+
+phoneme O:
+ ipa oe:
+ vowel starttype #@ endtype #@
+ length 275
+ FMT(vowel/oe)
+endphoneme
+
+
+
+// ========== //
+// CONSONANTS //
+// ========== //
+
+phoneme r
+ ipa r
+ liquid
+ trill
+ lengthmod 6
+ Vowelin f1=0 f2=1600 -300 300 f3=-200 80
+ Vowelout f1=2 f2=1600 -300 300 f3=-200 80 brk
+ FMT(r3/r_trill2) addWav(r3/r_trill2.wav, 65)
+endphoneme
+
+phoneme l
+ ipa l
+ liquid
+ starttype l endtype l
+ lengthmod 7
+
+ NextVowelStarts
+ VowelStart(l/l@)
+ VowelStart(l/la, -10)
+ VowelStart(l/le, -15)
+ VowelStart(l/li, -15)
+ VowelStart(vwl_fr/lo, -10)
+ VowelStart(l/lu, -20)
+ EndSwitch
+
+ IF prevPh(#@) THEN
+ VowelEnding(l/xl, -50)
+ ELIF prevPh(isVowel) THEN
+ VowelEnding(l/xl, -40)
+ ENDIF
+
+ IF prevPh(isPause) OR thisPh(isWordStart) THEN
+ FMT(l/_l)
+ ENDIF
+ IF prevPh(isRhotic) OR prevPh(isNasal) THEN
+ FMT(l/_l)
+ ENDIF
+
+ IF prevPh(t) THEN
+ FMT(l/tl)
+ ENDIF
+
+ IF prevPh(l/) THEN
+ FMT(l/l_long) // double l, make it longer
+ ENDIF
+
+ FMT(l/l)
+endphoneme
+
+
+phoneme L
+ // 'dark' [l]
+ ipa l-
+ liquid
+ lengthmod 7
+
+ IF nextPh(isVowel) THEN
+ ChangePhoneme(l)
+ ENDIF
+
+ CALL vowelstart_l
+
+ IF prevPhW(j) THEN
+ FMT(l/L2_eL)
+ ENDIF
+ IF prevPhW(w) THEN
+ FMT(l/L2_uL)
+ ENDIF
+
+ PrevVowelEndings
+ VowelEnding(l/L2_@L, -60)
+ VowelEnding(l/L2_aL, -50)
+ VowelEnding(l/L2_eL, -40)
+ VowelEnding(l/L2_iL, -30)
+ VowelEnding(l/L2_oL, -50)
+ VowelEnding(l/L2_uL, -40)
+ EndSwitch
+endphoneme
+
+
+phoneme j // **y**es
+ ipa j
+ liquid palatal starttype #i
+ lengthmod 7
+
+ IF nextPhW(isVowel) THEN
+ NextVowelStarts
+ VowelStart(j/j@)
+ VowelStart(j/ja)
+ VowelStart(j/je)
+ VowelStart(j/ji)
+ VowelStart(j/jo)
+ VowelStart(j/ju)
+ EndSwitch
+
+ VowelEnding(j/xj, -30)
+
+ IF prevPh(isPause) THEN
+ FMT(j/_j)
+ ENDIF
+ ELSE
+ // no vowel follows
+ Vowelout len=70
+ FMT(j/j_)
+ ENDIF
+endphoneme
+
+
+phoneme m
+ ipa m
+ vcd blb nasal
+ Vowelout f1=2 f2=1000 -500 -350 f3=-200 80 brk
+ lengthmod 4
+
+ IF KlattSynth THEN
+ Vowelin f1=0 f2=1000 -50 -200 f3=-200 80
+ IF nextPh(isPause2) THEN
+ FMT(klatt/m_)
+ ENDIF
+ FMT(klatt/m)
+ ENDIF
+
+ NextVowelStarts
+ VowelStart(m/m@)
+ VowelStart(m/ma)
+ VowelStart(m/me)
+ VowelStart(m/mi)
+ VowelStart(m/mo)
+ VowelStart(m/mu)
+ EndSwitch
+
+ IF prevPh(isNotVowel) AND nextPhW(isLiquid) THEN
+ FMT(m/mj)
+ ELIF prevPh(isPause) THEN
+ FMT(m/_m)
+ ELIF nextPh(isNotVowel) THEN
+ FMT(m/m_)
+ ENDIF
+endphoneme
+
+
+phoneme n
+ ipa n
+ vcd alv nasal
+ Vowelout f1=2 f2=1500 -300 250 f3=-100 80 rms=20 brk
+ lengthmod 4
+
+ IF KlattSynth THEN
+ Vowelin f1=0 f2=1500 -200 200 f3=0 80
+ FMT(klatt/n)
+ ENDIF
+
+ NextVowelStarts
+ VowelStart(n/n@)
+ VowelStart(n/na)
+ VowelStart(n/ne)
+ VowelStart(n/ni)
+ VowelStart(n/no)
+ VowelStart(n/nu)
+ EndSwitch
+
+ IF prevPh(isNotVowel) AND nextPhW(isLiquid) THEN
+ FMT(n/nj)
+ ELIF prevPh(isPause) OR prevPh(n) THEN
+ FMT(n/_n)
+ ELIF nextPh(isNotVowel) THEN
+ FMT(n/n_)
+ ENDIF
+endphoneme
+
+
+phoneme N // si**ng**
+ ipa N
+ vcd vel nasal
+ Vowelout f1=3 f2=2300 300 400 f3=-200 80 len=40 rms=20 brk
+ lengthmod 8 // longer than 'n'
+
+ IF KlattSynth THEN
+ Vowelin f1=0 f2=2100 50 300 f3=0 80
+ IF nextPh(isPause2) THEN
+ FMT(klatt/nn_)
+ ENDIF
+ FMT(klatt/nn)
+ ENDIF
+
+ NextVowelStarts
+ VowelStart(nn/nn@)
+ VowelStart(nn/nna)
+ VowelStart(nn/nne)
+ VowelStart(nn/nni)
+ VowelStart(nn/nno)
+ VowelStart(nn/nnu)
+ EndSwitch
+
+ IF prevPh(#i) THEN
+ VowelEnding(nn/inn, -40)
+ ENDIF
+
+ IF prevPh(isNotVowel) AND nextPhW(isLiquid) THEN
+ FMT(nn/nnj)
+ ELIF prevPh(isPause) THEN
+ FMT(nn/_nn)
+ ELIF nextPh(isNotVowel) THEN
+ FMT(nn/nn_)
+ ENDIF
+endphoneme
+
+
+phoneme * // flap
+ ipa ɾ
+ vcd alv flp rhotic
+ brkafter
+ lengthmod 3
+
+ IF nextPh(#e) OR nextPh(#i) THEN
+ Vowelin f1=0 f2=1500 -300 300 f3=-200 80
+ FMT(d/tap1) addWav(r3/rx, 150)
+ FMT(d/tap1) addWav(r3/rx, 150)
+ ENDIF
+
+ Vowelin f1=2 f2=1500 -300 300 f3=-200 80
+ IF nextPh(#a) THEN
+ FMT(d/tap3) addWav(r3/rx, 200)
+ ENDIF
+
+ IF nextPh(r) THEN
+ FMT(d/dr)
+ ENDIF
+
+ Vowelout f1=3 f2=1500 -400 300 f3=-200 80 rms=35 len=50
+ Vowelin f1=0 f2=1500 -300 300 f3=-200 80
+ FMT(d/tap3) addWav(r3/rx, 200)
+endphoneme
+
+phoneme f
+ ipa f
+ vls lbd frc
+ voicingswitch v
+ lengthmod 3
+ Vowelout f1=0 f2=1000 -500 -350 f3=-200 80
+ WAV(ufric/f)
+endphoneme
+
+phoneme v // english v for now
+ ipa v
+ vowel starttype #a endtype #@
+ length 170
+ ChangeIfDiminished(@)
+ FMT(vowel/V_6)
+endphoneme
+
+phoneme b
+ ipa b
+ vcd blb stop
+ voicingswitch p
+ Vowelout f1=2 f2=1000 -500 -300 f3=-300 80 brk
+ lengthmod 5
+
+ IF PreVoicing THEN
+ FMT(b/xb)
+ ENDIF
+
+ IF KlattSynth THEN
+ Vowelin f1=1 f2=1000 -500 -300 f3=-300 80
+ IF nextPh(isPause2) THEN
+ FMT(klatt/b) addWav(x/b_)
+ ENDIF
+ FMT(klatt/b) addWav(x/b)
+ ENDIF
+
+ IF nextPh(isPause2) THEN
+ FMT(b/b_) addWav(x/b_)
+ ELIF nextPh(@-) THEN
+ FMT(b/b@2) addWav(x/b)
+ ELIF nextPh(#@) THEN
+ FMT(b/b@) addWav(x/b)
+ ELIF nextPh(#a) THEN
+ FMT(b/ba) addWav(x/b)
+ ELIF nextPh(#e) THEN
+ FMT(b/be) addWav(x/b)
+ ELIF nextPh(#i) THEN
+ FMT(b/bi) addWav(x/b)
+ ELIF nextPh(#o) THEN
+ FMT(b/bo) addWav(x/b)
+ ELIF nextPh(#u) THEN
+ FMT(b/bu) addWav(x/b)
+ ENDIF
+
+ FMT(b/b) addWav(x/b)
+endphoneme
+
+phoneme ts
+ ipa ts
+ Length 10
+ import_phoneme consonants/ts
+endphoneme
+
+phoneme tS // **ch**urch
+ ipa tS
+ vls pla afr sibilant
+ voicingswitch dZ
+ lengthmod 2
+ Vowelin f1=0 f2=2300 200 400 f3=-100 80
+
+ IF nextPh(isPause2) THEN
+ WAV(ustop/tsh_)
+ ENDIF
+ WAV(ustop/tsh)
+endphoneme
+
+phoneme dZ // **j**udge
+ ipa dZ
+ vcd pla afr sibilant
+ voicingswitch tS
+ lengthmod 5
+ Vowelin f1=2 f2=2300 200 400 f3=100 80
+ Vowelout f1=2 f2=2300 250 300 f3=100 80 brk
+
+ IF PreVoicing THEN
+ FMT(dzh/xdzh)
+ ENDIF
+
+ IF nextPh(isPause2) THEN
+ FMT(dzh/dzh_) addWav(x/dzh_)
+ ENDIF
+ FMT(dzh/dzh) addWav(x/dzh)
+endphoneme
+
+
+
+phoneme g
+ vcd vel stop
+ voicingswitch k
+ lengthmod 5
+ Vowelin f1=2 f2=2300 200 300 f3=-300 80
+ Vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
+
+ IF PreVoicing THEN
+ FMT(g/xg)
+ ENDIF
+
+ IF nextPh(isPause2) THEN
+ FMT(g/g_) addWav(x/g_)
+ ENDIF
+ FMT(g/g) addWav(x/g2, 150)
+endphoneme
+
+
+phoneme k
+ vls vel stop
+ voicingswitch g
+ lengthmod 2
+ Vowelin f1=0 f2=2300 200 300 f3=-200 80
+ Vowelout f1=0 f2=2300 300 400 f3=-200 80 rms=20
+
+ IF KlattSynth THEN
+ Vowelout f1=0 f2=2300 200 300 f3=-200 80 rms=20
+ ENDIF
+
+ IF nextPh(isPause2) THEN
+ WAV(ustop/k_)
+ ELIF nextPh(r) OR nextPh(R) OR nextPh(R2) THEN
+ WAV(ustop/kr)
+ // ELIF nextPh(#i) OR nextPh(;) THEN
+ // WAV(ustop/ki)
+ ELIF nextPh(l) THEN
+ WAV(ustop/kl)
+ ELIF nextPh(@-) THEN
+ WAV(ustop/k_unasp, 70)
+ ENDIF
+ WAV(ustop/k)
+endphoneme
+
+
+phoneme z
+ ipa z
+ vcd alv frc sibilant
+ voicingswitch s
+ lengthmod 6
+ Vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50
+
+ IF KlattSynth THEN
+ Vowelin f1=0 f2=1390 -300 300 f3=0 0
+ Vowelout f1=1 f2=1390 -300 300 f3=-100 60 len=50 brk
+ ENDIF
+
+ IF nextPh(isPause2) THEN
+ FMT(voc/z_) addWav(ufric/s_, 70)
+ ENDIF
+ FMT(voc/z) addWav(ufric/s_, 85)
+endphoneme
+
+phoneme G
+ vcd uvl frc
+ ipa ʁ
+ lengthmod 6
+
+ IF nextPh(isPause2) THEN
+ FMT(voc/Q_ulv) addWav(ufric/xx, 60)
+ ENDIF
+ FMT(voc/Q_ulv) addWav(ufric/xx, 80)
+endphoneme
+
+
+phoneme p
+ ipa p
+ vls blb stop
+ voicingswitch b
+ lengthmod 2
+ Vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11
+ Vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=22
+
+ IF nextPh(isPause2) THEN
+ WAV(ustop/p_)
+ ELIF nextPh(r) THEN
+ WAV(ustop/pr, 70)
+ ELIF nextPh(R) OR nextPh(R2) THEN
+ WAV(ustop/pr)
+ ELIF nextPh(@-) THEN
+ WAV(ustop/p_unasp)
+ ELIF nextPh(l) THEN
+ WAV(ustop/pl)
+ ENDIF
+ WAV(ustop/p)
+endphoneme
+
+
+phoneme t // dental /t/
+ ipa t[
+ vls dnt stop
+ voicingswitch d
+ lengthmod 2
+ Vowelin f1=1 f2=1500 -250 250 f3=-100 80 amp=16
+ Vowelout f1=0 f2=1500 -300 250 f3=-100 80 rms=20
+
+ IF nextPh(isPause2) THEN
+ WAV(ustop/t_dnt, 35)
+ ENDIF
+ WAV(ustop/t_hi, 70)
+endphoneme
+
+
+phoneme d // dental /d/
+ ipa d[
+ vcd dnt stop
+ voicingswitch t
+ lengthmod 5
+ Vowelin f1=2 f2=1500 -300 300 f3=-150 80
+ Vowelout f1=2 f2=1500 -300 300 f3=-150 80
+
+ IF PreVoicing THEN
+ FMT(d/xd)
+ ENDIF
+
+ IF nextPh(isPause2) THEN
+ FMT(d/d_) addWav(x/d_)
+ ELIF nextPh(r) THEN
+ FMT(d/dr) addWav(x/d_dnt, 100)
+ ENDIF
+
+ FMT(d/d) addWav(x/d_dnt, 100)
+endphoneme
+
+
+
+phoneme q
+ ipa q
+ vls uvl stop
+ lengthmod 2
+ Vowelin f1=1 f2=1700 0 200 f3=-300 80 gpaus f4 rms=30
+ Vowelout f1=1 f2=1700 -100 200 f3=-300 80 f4 rms=35
+
+ IF nextPh(isPause2) THEN
+ WAV(ustop/q, 40)
+ ELIF nextPh(#u) THEN
+ WAV(ustop/q_u, 80)
+ ENDIF
+ WAV(ustop/q, 48)
+endphoneme
+
+
+phoneme s
+ ipa s
+ vls alv frc sibilant
+ voicingswitch z
+ lengthmod 3
+ Vowelin f1=0 f2=1700 -300 300 f3=-100 80
+ Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
+
+ IF nextPh(isPause) THEN
+ WAV(ufric/s_)
+ ELIF nextPh(p) OR nextPh(t) OR nextPh(k) THEN
+ WAV(ufric/s!)
+ ENDIF
+ WAV(ufric/s)
+endphoneme
+
+
+phoneme S // **sh**op
+ ipa S
+ vls pla frc sibilant
+ voicingswitch Z
+ lengthmod 3
+ Vowelin f1=0 f2=2100 100 300 f3=-100 80
+ Vowelout f1=0 f2=2100 100 300 f3=-100 80
+
+ IF nextPh(isPause) THEN
+ WAV(ufric/sh_)
+ ENDIF
+ WAV(ufric/sh)
+endphoneme
+
+
+phoneme X
+ ipa X
+ vls uvl frc
+ voicingswitch Q"
+ lengthmod 3
+
+ IF nextPh(isPause) THEN
+ WAV(ufric/xx, 70)
+ ENDIF
+ WAV(ufric/xx,80)
+endphoneme
diff --git a/phsource/phonemes b/phsource/phonemes
index d7272789..3dc4e633 100644
--- a/phsource/phonemes
+++ b/phsource/phonemes
@@ -1977,3 +1977,6 @@ include ph_burmese
phonemetable gn base
include ph_guarani
+phonemetable kg base
+include ph_kyrgyz
+