Magyar számnevek fomával

A Programozás Wiki wikiből

A magyar számnevek ragozása messzemenően megegyezik a magyar főnevek ragozásával. A különbség csupán annyi, hogy számnevek esetén három rag hozzájön: od, ed, öd (tized, kilenced), edik, adik, odik, ödik (második, negyedik) és szor, szer, ször (kétszer, negyvenszer).

Lexc fájl:[szerkesztés]

!!!enhunum1.lexc!!!
! szor, szer, ször, edik, adik, odik, ed, ad,öd ragok

Multichar_Symbols  +Noun

+Dis +Ess +Soc +Tem
+Posss1s +Posss2s +Posss3s +Possp1s +Possp2s +Possp3s
+Posss1p +Posss2p +Posss3p +Possp1p +Possp2p +Possp3p

+Plur +Fam +Gens +Genpl
     
+Abl +Acc +Ade +All +Cau +Dat +Del
+Ela +Fac +For +Ill +Ine +Ins +Nom
+Sub +Sup +Ter
     
§EOA§ §uue§ §ooez3§ §OEOE1§ §J§ §UUE§ §OEOE§ §JP§ §AE§ §OEOE2§
§UUE1§ §oeoez1§ §oooe§ §oeoez2§ §oeoez3§ §AAA§ §oeoe§ §AA§ §oeoez§ §AE1§
§VV§ §b§ §h§ §k§ §n§ §r§ §t§
§aeoenr§ §oeanr§
     
LEXICON Root
Num ;

!define Cons [b | c | d | f | g | h | j | k | l | m | n | p | q | r | s | t | v | w | x | y | z];
!define Vowel [a | á | e | é | i | í | o | ó | u | ú | ü | ű | ö | ő];
!define Root [ [Cons^{0,4} Vowel^{1,3}] | [Cons^{0,4} Vowel^{1,3} Cons^{1,4} Vowel^{0,3} ]* ] ;

LEXICON Num
egy AddNum;
kettő AddNum;
három AddNum;
négy AddNum;
öt AddNum;
hat AddNum;
hét AddNum;
nyolc AddNum;
kilenc AddNum;
tíz AddNum;
húsz AddNum;
harminc AddNum;
negyven AddNum;
ötven AddNum;
hatvan AddNum;
hetven AddNum;
nyolcvan AddNum;
kilencven AddNum;
száz AddNum;
ezer AddNum;
millió AddNum;
milliárd AddNum;
billió AddNum;
trillió AddNum;


LEXICON AddNum
+Num:0     Poss;
+Num:0     Plur;
+Num:0     Fam;

LEXICON Poss
+Dis:^+cDis^§ooez3§nként    #;    ! anként, enként
+Ess:^+cEss^§uue§l          #;    ! ul, ül
+Soc:^+cSoc^§EOA§st§uue§l   #;    ! astul, estül
+Tem:^+cTem^§k§or             #;    ! kor
+Posss1s:^+cPosss1s^§OEOE1§m        Gen;  ! m
+Posss2s:^+cPosss2s^§OEOE1§d        Gen;  ! d
+Posss3s:^+cPosss3s^§J§§AE1§        Gen;  ! ja, je, a,e
+Possp1s:^+cPossp1s^§UUE§nk         Gen;  ! unk, ünk
+Possp2s:^+cPossp2s^§OEOE1§t§OEOE§k Gen;  ! etek, atok
+Possp3s:^+cPossp3s^§J§§UUE1§k      Gen;  ! ük, uk
+Posss1p:^+cPosss1p^§JP§§AE§im    Gen;  ! aim
+Posss2p:^+cPosss2p^§JP§§AE§id    Gen;  ! aid
+Posss3p:^+cPosss3p^§JP§§AE§i     Gen;  ! ai, jai, ei, jei
+Possp1p:^+cPossp1p^§JP§§AE§ink   Gen;  ! aink, eink
+Possp2p:^+cPossp2p^§JP§§AE§it§OEOE2§k Gen; ! aitok, eitek
+Possp3p:^+cPossp3p^§JP§§AE§ik    Gen;  !aik, jaik, eik, jeik
                                  Gen;

LEXICON Plur
+Plur:^+cPlur^§oeoez1§k    Gen;
                            Gen;
       
LEXICON Fam
+Fam:^+cFam^ék         Gen;
                       Gen;

LEXICON Gen
+Gens:^+cGens^é          Case;
+Genpl:^+cGenpl^éi     Case;
                       Case;
 
LEXICON Case
+Abl:^+cAbl^§t§§oooe§l      #;  ! tól, től
+Acc:^+cAcc^§oeoez2§t       #;  ! ot, et, öt, t
+Ade:^+cAde^§n§§AAA§l       #;  ! nál, nél
+All:^+cAll^§h§§oeoe§z      #;  ! hoz, hez, höz
+Cau:^+cCau^ért             #;  ! ért
+Dat:^+cDat^§n§§AA§k        #;  ! nak, nek
+Del:^+cDel^§r§§oooe§l      #;  ! ról, ről
+Ela:^+cEla^§b§§oooe§l      #;  ! ból, ből
+Fac:^+cFac^§VV§§AAA§       #;  ! vá, vé
+For:^+cFor^§k§ént          #;  ! ként, képp, képpen
+Ill:^+cIll^§b§§AA§         #;  ! ból, ből
+Ine:^+cIne^§b§§AA§n        #;  ! ban, ben
+Ins:^+cIns^§VV§§AA§l       #;  ! val, vel
+Nom:^+cNom^0               #;  !
+Par:^+cPar^§aeoenr§d       #;  ! od,ed,öd
+Seq:^+cSeq^§aeoenr§dik     #;  ! odik,edik,ödik
+Sub:^+cSub^§r§§AA§         #;  ! ra, re
+Sup:^+cSup^§oeoez§n        #;  ! on, en, ön, n
+Tmp:^+cTmp^sz§oeanr§r      #;  ! szor, szer, ször
+Ter:^+cTer^ig              #;  ! ig

foma fájl:[szerkesztés]

### enhunum.foma ###

# Vowels
define Vowel [ a | á | e | é | i | í | o |ó | u | ú | ü | ű | ö | ő | A | Á | E | É | I | Í | O |Ó | U | Ú | Ü | Ű | Ö | Ő ];
define ConsNogln [ b | c | d | f | h | j | k | m | p | q | r | s | v | w | x | y | z | B | C | D | E | F | H | J | K | L | M | P | Q | R | S | V | W | X | Y | Z ];
define Cons [ b | c | č | ć | d | f | g | h | j | k | l | m | n | p | q | r | s | t | v | w | x | y | z | B | C | D | E | F | G | H | J | K | L | M | N | P | Q | R | S | T | V | W | X | Y | Z ];
define yNoCons [ ConsNogln y | Vowel y | s z t y ];
define yNoConstny [ Cons y | Vowel y ];
define Vowelwithy [ Vowel | yNoCons ];
define Vowelwithyy [ Vowel | y ];
define Vowelwithytny [ Vowel | yNoConstny ];
define Vowel1 [ a | e | í | o | ü | ö | A | E | Í | O | Ü | Ö ]; # w/o  á, é, i, ó, ő, ű, u, ú
define Vowel1exc [ á | é | i | ó | ő | ű | u | ú | Á | É | I | Ó | Ő | Ű | U | Ú ];
define Vowel1withy [ Vowel1 | yNoCons ];
define BackVowel [ a | á | o | ó | u | ú | A | Á | O | Ó | U | Ú ];
define FrontUnroundedVowel [ e | é | i | í | ü | ű | E | É | I | Í | Ü | Ű ];
define Front1UnroundedVowel [ e | é | i | í | E | É | I | Í  ];
define FrontRoundedVowel [ ö | ő | Ö | Ő ];
define Front1RoundedVowel [ ö | ő | ü | ű | Ö | Ő | Ü | Ű ];
define FrontVowel [ e | é | i | í | ü | ű | ö | ő | E | É | I | Í | Ü | Ű | Ö | Ő ];
define PlosivCons [ b | d | g | h | j | p | t | B | D | G | H | J | P | T ];
define NonPlosivCons [ c | j | l | r | s | v | z | C | J | L | R | S | V | Z ];
define OppNonPlosivCons [ b | d | f | g | h | k | m | n | p | q | t | w | x | y | B | D | F | G | H | K | M | N | P | Q | T | W | X | Y ];
define DCons [ s z | z s | g y | t y | n y | l y | c s |  S Z | Z S | G Y | T Y | N Y | L Y | C S ];
define AccSingle [ j | l | n | r | s | z ];
define Nodupy [ Vowel | ConsNogln ];
# előd (gróf zsiráf bab)
define ConsJaje [ b | f ];
#abáltja holdja
define ConsAeJaje [ \Cons d | g | \s \c  h | s \c h | [ \s & \Vowel ] c h | k | l | m | n | p | r | \l t | v | g y | \z t y ];
# kénye reménye
define ConsAe [ c | j | s | z | x | s z | z s | c s | č | ć | [ s | Vowel ] c h | s z t y | n y | l y ];

# Consonant doubling: 1-letter consonant doubled before -ing/-ed (beg/begging)
define Etoee e -> é ||  _ "^"  ?*  [ "+" {cAbl} | "+" {cAcc} | "+" {cAde} | "+" {cAll} | "+" {cCau} | "+" {cDat} | "+" {cDel} | "+" {cEla} | "+" {cFac} | "+" {cIll} | "+" {cIne} | "+" {cIns} | "+" {cSub} | "+" {cSup} | "+" {cTer} | "+" {cFam} | "+" {cDis} | "+" {cEss} | "+" {cSoc}  | "+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}  | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s} | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p} | "+" {cPlur} | "+" {cGens} | "+" {cGenpl}] ?* ; # \0: not zero kor & ként excluded
define Atoaa a -> á ||  _ "^"  ?*  [ "+" {cAbl} | "+" {cAcc} | "+" {cAde} | "+" {cAll} | "+" {cCau} | "+" {cDat} | "+" {cDel} | "+" {cEla} | "+" {cFac} | "+" {cIll} | "+" {cIne} | "+" {cIns} | "+" {cSub} | "+" {cSup} | "+" {cTer} | "+" {cFam} | "+" {cDis} | "+" {cEss} | "+" {cSoc}  | "+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}  | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s} | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p} | "+" {cPlur}  | "+" {cGens} | "+" {cGenpl}] ?* ; # \0: not zero kor & ként excluded
# ajtó
define Ootoa     ó -> a || _ "^";
#derék
define Eetoe é -> e || .#. \%^* _ [ k ] "^"  ?*  [ "+" {cPlur}  | "+" {cSoc} | "+" {cDis} |"+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}  | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s} | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p} | "+" {cPlur} ]   ?*  ;
#bél
define EetoeAcc é -> e || .#. \%^* _ [ DCons | Cons ] "^"  ?*  [ "+" {cAcc} ]  ?*  ;
define EtoeeFgg e -> é || .#. \%^* _ [ DCons | Cons ] "^"  ?*  [ {cFam} | {cGen} | {cGenpl} ]    ?*  ;
define EetoePP é -> e || .#. \%^* _ [ DCons | Cons ] "^"  ?*  [ "+" {cPlur}  | "+" {cSoc} | "+" {cDis} |"+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}  | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s} | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p} ]   ?*  ;
#víz
define IitoiAcc3 í -> i || .#. \%^* _ [ DCons | Cons ] "^"  ?*  [ "+" {cAcc} ]  ?*  ;
define ItoiiFgg3 i -> í || .#. \%^* _ [ DCons | Cons ] "^"  ?*  [ {cFam} | {cGen} | {cGenpl} ]    ?*  ;
define IitoiPP3 í -> i || .#. \%^* _ [ DCons | Cons ] "^"  ?*  [ "+" {cPlur}  | "+" {cSoc} | "+" {cDis} |"+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}  | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s} | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p} ]   ?*  ;
#tűz
define UeuetoueAcc3 ű -> ü || .#. \%^* _ [ DCons | Cons ] "^"  ?*  [ "+" {cAcc} ]  ?*  ;
define UetoueueFgg3 ü -> ű || .#. \%^* _ [ DCons | Cons ] "^"  ?*  [ {cFam} | {cGen} | {cGenpl} ]    ?*  ;
define UeuetouePP3 ű -> ü || .#. \%^* _ [ DCons | Cons ] "^"  ?*  [ "+" {cPlur}  | "+" {cSoc} | "+" {cDis} |"+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}  | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s} | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p} ]   ?*  ;
#nyár
define AatoaAcc3 á -> a || .#. \%^* _ [ DCons | Cons ] "^"  ?*  [ "+" {cAcc} ]  ?*  ;
define AtoaaFgg3 a -> á || .#. \%^* _ [ DCons | Cons ] "^"  ?*  [ {cFam} | {cGen} | {cGenpl} ]    ?*  ;
define AatoaPP3 á -> a || .#. \%^* _ [ DCons | Cons ] "^"  ?*  [ "+" {cPlur}  | "+" {cSoc} | "+" {cDis} |"+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}  | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s} | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p} ]   ?*  ;
#kút, úr
define UutouAcc3 ú -> u || .#. \%^* _ [ DCons | Cons ] "^"  [ "+" {cAcc} ]  ?*  ;
define UtouuFgg3 u -> ú || .#. \%^* _ [ DCons | Cons ] "^"  ?*  [ {cFam} | {cGen} | {cGenpl} ]    ?*  ;
# úr - ura
define UutouPP3 ú -> u || .#. \%^* _ NonPlosivCons+  "^"  ?*  [ "+" {cPlur}  | "+" {cSoc} | "+" {cDis} |"+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}| "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s}| "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p} ]   ?*  ;
# út, kút, lúd - lúdja  rúd ruduk
define UutouPP31 ú -> u || .#. \%^* _ OppNonPlosivCons+ %^  ?*  [ "+" {cPlur}  | "+" {cSoc} | "+" {cDis} |"+" {cPosss1s}  | "+" {cPosss2s}    | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p}  | "+" {cPossp3s}]   ?*  ;

define UuJtoj §J§ -> j || .#. \%^* ú OppNonPlosivCons+ %^ [ "+" {cPosss3s} ] %^ _ ?*  ;

define HarmRulejaje §AE1§ -> á // .#. \"^"* BackVowel \Vowel* "^" ?* _ "^"  ?*  [ "+" {cAbl} | "+" {cAcc} | "+" {cAde} | "+" {cAll} | "+" {cCau} | "+" {cDat} | "+" {cDel} | "+" {cEla} | "+" {cFac} | "+" {cIll} | "+" {cIne} | "+" {cIns} | "+" {cSub} | "+" {cSup} | "+" {cTer} | "+" {cFam} | "+" {cDis} | "+" {cEss} | "+" {cSoc}  | "+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}  | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s} | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p} | "+" {cPlur} | "+" {cGens} | "+" {cGenpl}] ?* .o.
                 §AE1§ -> é // .#. \"^"* FrontVowel \Vowel* "^" ?* _ "^"  ?*  [ "+" {cAbl} | "+" {cAcc} | "+" {cAde} | "+" {cAll} | "+" {cCau} | "+" {cDat} | "+" {cDel} | "+" {cEla} | "+" {cFac} | "+" {cIll} | "+" {cIne} | "+" {cIns} | "+" {cSub} | "+" {cSup} | "+" {cTer} | "+" {cFam} | "+" {cDis} | "+" {cEss} | "+" {cSoc}  | "+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}  | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s} | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p} | "+" {cPlur} | "+" {cGens} | "+" {cGenpl}] ?* .o.
                 §AE1§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?*  _ %^ [ 0 ] .o.
                 §AE1§ -> e // .#. \"^"* FrontVowel \Vowel* "^" ?* _ %^ [ 0 ] ;
define HarmRulejajemagas §AE1magas§ -> é // .#. \"^"* BackVowel \Vowel* "^" ?* _ "^"  ?*  [ "+" {cAbl} | "+" {cAcc} | "+" {cAde} | "+" {cAll} | "+" {cCau} | "+" {cDat} | "+" {cDel} | "+" {cEla} | "+" {cFac} | "+" {cIll} | "+" {cIne} | "+" {cIns} | "+" {cSub} | "+" {cSup} | "+" {cTer} | "+" {cFam} | "+" {cDis} | "+" {cEss} | "+" {cSoc}  | "+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}  | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s} | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p} | "+" {cPlur} | "+" {cGens} | "+" {cGenpl}] ?* .o.
                 §AE1magas§ -> é // .#. \"^"* FrontVowel \Vowel* "^" ?* _ "^"  ?*  [ "+" {cAbl} | "+" {cAcc} | "+" {cAde} | "+" {cAll} | "+" {cCau} | "+" {cDat} | "+" {cDel} | "+" {cEla} | "+" {cFac} | "+" {cIll} | "+" {cIne} | "+" {cIns} | "+" {cSub} | "+" {cSup} | "+" {cTer} | "+" {cFam} | "+" {cDis} | "+" {cEss} | "+" {cSoc}  | "+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}  | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s} | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p} | "+" {cPlur} | "+" {cGens} | "+" {cGenpl}] ?* .o.
                 §AE1magas§ -> e // .#. \"^"* BackVowel \Vowel* "^" ?*  _ %^ [ 0 ] .o.
                 §AE1magas§ -> e // .#. \"^"* FrontVowel \Vowel* "^" ?* _ %^ [ 0 ] ;
define HarmRulejajemely §AE21§ -> á // .#. \"^"* BackVowel \Vowel* "^" ?* _ "^"  ?*  [ "+" {cAbl} | "+" {cAcc} | "+" {cAde} | "+" {cAll} | "+" {cCau} | "+" {cDat} | "+" {cDel} | "+" {cEla} | "+" {cFac} | "+" {cIll} | "+" {cIne} | "+" {cIns} | "+" {cSub} | "+" {cSup} | "+" {cTer} | "+" {cFam} | "+" {cDis} | "+" {cEss} | "+" {cSoc}  | "+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}  | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s} | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p} | "+" {cPlur} | "+" {cGens} | "+" {cGenpl}] ?* .o.
                 §AE21§ -> á // .#. \"^"* FrontVowel \Vowel* "^" ?* _ "^"  ?*  [ "+" {cAbl} | "+" {cAcc} | "+" {cAde} | "+" {cAll} | "+" {cCau} | "+" {cDat} | "+" {cDel} | "+" {cEla} | "+" {cFac} | "+" {cIll} | "+" {cIne} | "+" {cIns} | "+" {cSub} | "+" {cSup} | "+" {cTer} | "+" {cFam} | "+" {cDis} | "+" {cEss} | "+" {cSoc}  | "+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}  | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s} | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p} | "+" {cPlur} | "+" {cGens} | "+" {cGenpl}] ?* .o.
                 §AE21§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?*  _ %^ [ 0 ] .o.
                 §AE21§ -> a // .#. \"^"* FrontVowel \Vowel* "^" ?* _ %^ [ 0 ] ;

# changez2 changes oeoez2 to oeoez3 for certain cases
# köd-> ködöt but ködeimet (acc ending or rounded wovels, öü)
define Changez2   §oeoez2§ -> §oeoez3§ // .#. ?* [ "+" {cGens} |  "+" {cGenpl} | "+" {cPosss1s}  | "+" {cPosss2s}  | "+" {cPosss3s}  | "+" {cPossp1s}  | "+" {cPossp2s}  | "+" {cPossp3s} | "+" {cPosss1p} | "+" {cPosss2p} | "+" {cPosss3p} | "+" {cPossp1p} | "+" {cPossp2p} | "+" {cPossp3p}|  "+" {cPlur}|  "+" {cFam} ] ?* _ t [0] ;
define HarmRuleAcc §oeoez2§ -> 0 // Vowelwithy %^ _  .o.
                 §oeoez2§ -> e // .#. \"^"* t e j "^"  _ \"^"* .#. .o.
                 §oeoez2§ -> e // .#. \"^"* m e l l "^"  _ \"^"* .#. .o.
                 §oeoez2§ -> e // .#. \"^"* t ü z "^"  _ \"^"* .#. .o.
                 §oeoez2§ -> e // .#. \"^"* f ü z "^"  _ \"^"* .#. .o.
                 §oeoez2§ -> e // .#. \"^"* s z ü z "^"  _ \"^"* .#. .o.
                 §oeoez2§ -> 0 //  Vowel AccSingle  %^ _ .o.
                 §oeoez2§ -> 0 //  Vowel AccSingle AccSingle  %^ _ .o.
                 §oeoez2§ -> o //  BackVowel s z n %^ _ .o. # hasznot
# rozsot
                 §oeoez2§ -> o //  r o z s %^ _ .o. # koszt
# gúnyt, koszt, vészt
                 §oeoez2§ -> 0 //  Vowel [ n y | s z  | l y ]   %^ _ .o.
                 §oeoez2§ -> 0 //  Vowel [ n y | l y | s z | z s ] AccSingle  %^ _ .o.
                 §oeoez2§ -> 0 //  [ Nodupy ]  y  %^ _ .o.
# if at least one additional affix befor the acc affix babot de babjaimat
                 §oeoez2§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* [ "^" ] ?* _ .o.
                 §oeoez2§ -> o // .#. \"^"* BackVowel \Vowel* "^" [ \"^" ]* _ ,,
                 §oeoez2§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §oeoez2§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleAccy §oeoez2y§ -> 0 // Vowelwithyy %^ _  .o.
                 §oeoez2y§ -> e // .#. \"^"* t e j "^"  _ \"^"* .#. .o.
                 §oeoez2y§ -> e // .#. \"^"* m e l l "^"  _ \"^"* .#. .o.
                 §oeoez2y§ -> e // .#. \"^"* t ü z "^"  _ \"^"* .#. .o.
                 §oeoez2y§ -> e // .#. \"^"* f ü z "^"  _ \"^"* .#. .o.
                 §oeoez2y§ -> e // .#. \"^"* s z ü z "^"  _ \"^"* .#. .o.
                 §oeoez2y§ -> 0 //  Vowel AccSingle  %^ _ .o.
                 §oeoez2y§ -> 0 //  Vowel AccSingle AccSingle  %^ _ .o.
                 §oeoez2y§ -> o //  BackVowel s z n %^ _ .o. # hasznot
# rozsot
                 §oeoez2y§ -> o //  r o z s %^ _ .o. # koszt
# gúnyt, koszt, vészt
                 §oeoez2y§ -> 0 //  Vowel [ n y | s z  | l y ]   %^ _ .o.
                 §oeoez2y§ -> 0 //  Vowel [ n y | l y | s z | z s ] AccSingle  %^ _ .o.
                 §oeoez2y§ -> 0 //  [ Nodupy ]  y  %^ _ .o.
# if at least one additional affix befor the acc affix babot de babjaimat
                 §oeoez2y§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* [ "^" ] ?* _ .o.
                 §oeoez2y§ -> o // .#. \"^"* BackVowel \Vowel* "^" [ \"^" ]* _ ,,
                 §oeoez2y§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §oeoez2y§ -> e // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleAccoa §oeoez12§ -> 0 // Vowelwithy %^ _  .o.
# vásznat, kazlat, jászlat
                 §oeoez12§ -> a // .#. \"^"* BackVowel \Vowel* s z n "^" _ \"^"* .#.  .o.
                 §oeoez12§ -> a // .#. \"^"* BackVowel \Vowel* s z l "^" _ \"^"* .#.  .o.
                 §oeoez12§ -> a // .#. \"^"* BackVowel \Vowel* z l "^" _ \"^"* .#.  .o.
                 §oeoez12§ -> 0 //  Vowel AccSingle  %^ _ .o.
                 §oeoez12§ -> 0 //  Vowel AccSingle AccSingle  %^ _ .o.
                 §oeoez12§ -> 0 //  Vowel [ n y | s z | l y ]   %^ _ .o.
                 §oeoez12§ -> 0 //  Vowel [ n y | l y | s z | z s ] AccSingle  %^ _ .o.
                 §oeoez12§ -> 0 //  [ Nodupy ]  y  %^ _ .o.
                 §oeoez12§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §oeoez12§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §oeoez12§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleAccoaoe §oeoez13§ -> 0 // Vowelwithy %^ _  .o.
                 §oeoez13§-> a // r j %^ _ .o. # varjat, borjat
                 §oeoez13§ -> 0 //  Vowel AccSingle  %^ _ .o.
                 §oeoez13§ -> 0 //  Vowel AccSingle AccSingle  %^ _ .o.
                 §oeoez13§ -> 0 //  Vowel [ n y | s z | l y ]   %^ _ .o.
                 §oeoez13§ -> 0 //  Vowel [ n y | l y | s z | z s ] AccSingle  %^ _ .o.
                 §oeoez13§ -> 0 //  [ Nodupy ]  y  %^ _ .o.
                 §oeoez13§ -> o //  r o z s %^ _ .o. # koszt
                 §oeoez13§ -> 0 //  [ s z | z s ] %^ _ .o. # koszt
                 §oeoez13§ -> a // .#. \"^"* BackVowel \Vowel* "^" [ \"^" ]* _ ,,
# if at least one additional affix befor the acc affix babot de babjaimat
                 §oeoez13§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* [ "^" ]* _ ,,
                 §oeoez13§ -> e // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleAccmely §oeoez22§ -> 0 // Vowelwithy %^ _  .o.
                 §oeoez22§ -> 0 //  Vowel AccSingle  %^ _ .o.
                 §oeoez22§ -> 0 //  Vowel AccSingle AccSingle  %^ _ .o.
                 §oeoez22§ -> 0 //  Vowel [ n y | s z | l y ]   %^ _ .o.
                 §oeoez22§ -> 0 //  Vowel [ n y | l y | s z | z s ] AccSingle  %^ _ .o.
                 §oeoez22§ -> 0 //  [ Nodupy ]  y  %^ _ .o.
# if at least one additional affix befor the acc affix babot de babjaimat
                 §oeoez22§ -> a // .#. \"^"* Vowel \Vowel* "^" ?* [ "^" ] ?* _ .o.
                 §oeoez22§ -> o // .#. \"^"* Vowel \Vowel* "^" [ \"^" ]* _ ,,
                 §oeoez22§ -> o //  r o z s %^ _ .o. # koszt
                 §oeoez22§ -> 0 //  [ s z | z s ] %^ _ ; # koszt
define HarmRuleAccmely27 §oeoez27§ -> 0 // Vowelwithy %^ _  .o.
                 §oeoez27§ -> 0 //  Vowel AccSingle  %^ _ .o.
                 §oeoez27§ -> 0 //  Vowel AccSingle AccSingle  %^ _ .o.
                 §oeoez27§ -> 0 //  Vowel [ n y | s z | l y ]   %^ _ .o.
                 §oeoez27§ -> 0 //  Vowel [ n y | l y | s z | z s ] AccSingle  %^ _ .o.
                 §oeoez27§ -> 0 //  [ Nodupy ]  y  %^ _ .o.
# if at least one additional affix befor the acc affix babot de babjaimat
                 §oeoez27§ -> a // .#. \"^"* Vowel \Vowel* "^" ?* [ "^" ] ?* _ .o.
                 §oeoez27§ -> a // .#. \"^"* Vowel \Vowel* "^" [ \"^" ]* _ ,,
                 §oeoez27§ -> a //  r o z s %^ _ .o. # koszt
                 §oeoez27§ -> 0 //  [ s z | z s ] %^ _ ; # koszt
define HarmRuleAccmagas §oeoez2magas§ -> 0 // Vowelwithy %^ _  .o.
                 §oeoez2magas§ -> 0 //  Vowel AccSingle  %^ _ .o.
                 §oeoez2magas§ -> 0 //  Vowel AccSingle AccSingle  %^ _ .o.
                 §oeoez2magas§ -> 0 //  Vowel [ n y | l y | s z | z s ] AccSingle  %^ _ .o.
                 §oeoez2magas§ -> 0 //  [ Nodupy ]  y  %^ _ .o.
# if at least one additional affix befor the acc affix babot de babjaimat
                 §oeoez2magas§ -> e // .#. \"^"* Vowel \Vowel* "^" ?* [ "^" ] ?* _ .o.
                 §oeoez2magas§ -> e // .#. \"^"* Vowel \Vowel* "^" [ \"^" ]* _ ;
define HarmRuleAccoamely §oeoez24§ -> 0 // Vowelwithy %^ _  .o.
                 §oeoez24§ -> 0 //  Vowel AccSingle  %^ _ .o.
                 §oeoez24§ -> 0 //  Vowel AccSingle AccSingle  %^ _ .o.
                 §oeoez24§ -> 0 //  Vowel [ n y | s z | l y ]   %^ _ .o.
                 §oeoez24§ -> 0 //  Vowel [ n y | l y | s z | z s ] AccSingle  %^ _ .o.
                 §oeoez24§ -> 0 //  [ Nodupy ]  y  %^ _ .o.
# if at least one additional affix befor the acc affix babot de babjaimat
                 §oeoez24§ -> a // .#. \"^"* Vowel \Vowel* "^" ?* [ "^" ] ?* _ .o.
                 §oeoez24§ -> a // .#. \"^"* Vowel \Vowel* "^" [ \"^" ]* _ ,,
                 §oeoez24§ -> o //  r o z s %^ _ .o. # koszt
                 §oeoez24§ -> 0 //  [ s z | z s ] %^ _ ; # koszt de kekszet
define HarmRuleAccoe §oeoez4§ -> 0 //  Vowelwithy  %^ _  .o.
                 §oeoez4§ -> 0 //  Vowelwithy  s z  %^ _  .o.
                 §oeoez4§ -> e // .#. \"^"* f ü l "^" _ \"^"* .#.  .o.
                 §oeoez4§ -> e // .#. \"^"* t e j "^"  _ \"^"* .#. .o.
                 §oeoez4§ -> e // .#. \"^"* m e l l "^"  _ \"^"* .#. .o.
                 §oeoez4§ -> 0 //  Vowel AccSingle  %^ _ .o.
                 §oeoez4§ -> 0 //  Vowel AccSingle AccSingle  %^ _ .o.
                 §oeoez4§ -> 0 //  Vowel [ n y | s z | l y ]   %^ _ .o.
                 §oeoez4§ -> 0 //  Vowel [ n y | l y | s z | z s ] AccSingle  %^ _ .o.
                 §oeoez4§ -> 0 //  [ Nodupy ]  y  %^ _ .o.
# if at least one additional affix befor the acc affix babot de babjaimat
                 §oeoez4§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* [ "^" ] ?* _ .o.
                 §oeoez4§ -> o // .#. \"^"* BackVowel \Vowel* "^" [ \"^" ]* _ ,,
                 §oeoez4§ -> e // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
#másik
define HarmRuleAccmelymasik §oeoez26§ -> 0 // Vowelwithy %^ _  .o.
                 §oeoez26§ -> 0 //  Vowel AccSingle  %^ _ .o.
                 §oeoez26§ -> 0 //  Vowel AccSingle AccSingle  %^ _ .o.
                 §oeoez26§ -> 0 //  Vowel [ n y | s z | l y ]   %^ _ .o.
                 §oeoez26§ -> 0 //  Vowel [ n y | l y | s z | z s ] AccSingle  %^ _ .o.
                 §oeoez26§ -> 0 //  [ Nodupy ]  y  %^ _ .o.
# if at least one additional affix befor the acc affix babot de babjaimat
                 §oeoez26§ -> a // .#. \"^"* Vowel \Vowel* "^" ?* [ "^" ] ?* _ .o.
                 §oeoez26§ -> a // .#. \"^"* Vowel \Vowel* "^" [ \"^" ]* _ ,,
                 §oeoez26§ -> a //  r o z s %^ _ .o. # koszt
                 §oeoez26§ -> 0 //  [ s z | z s ] %^ _ ; # koszt
#
# göb, etc...
#
define HarmRuleAcc1 §oeoez3§ -> 0 // Vowelwithy %^ _  .o.
                 §oeoez3§ -> 0 //  Vowel AccSingle  %^ _ .o.
                 §oeoez3§ -> 0 //  Vowel AccSingle AccSingle  %^ _ .o.
                 §oeoez3§ -> 0 //  Vowel [ n y | s z | l y ]   %^ _ .o.
                 §oeoez3§ -> 0 //  Vowel [ n y | l y | s z | z s ] AccSingle  %^ _ .o.
                 §oeoez3§ -> 0 //  [ Nodupy ]  y  %^ _ .o.
                 §oeoez3§ -> 0 //  s z %^ _ .o. # koszt
# if at least one additional affix befor the acc affix babot de babjaimat
                 §oeoez3§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* [ "^" ] ?* _ .o.
                 §oeoez3§ -> o // .#. \"^"* BackVowel \Vowel* "^" [ \"^" ]* _ ,,
                 §oeoez3§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §oeoez3§ -> e // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleAcc1mely §oeoez3§ -> 0 // Vowelwithy %^ _  .o.
                 §oeoez3§ -> 0 //  Vowel AccSingle  %^ _ .o.
                 §oeoez3§ -> 0 //  Vowel AccSingle AccSingle  %^ _ .o.
                 §oeoez3§ -> 0 //  Vowel [ n y | s z | l y ]   %^ _ .o.
                 §oeoez3§ -> 0 //  Vowel [ n y | l y | s z | z s ] AccSingle  %^ _ .o.
                 §oeoez3§ -> 0 //  [ Nodupy ]  y  %^ _ .o.
                 §oeoez3§ -> 0 //  s z %^ _ .o. # koszt
                 §oeoez3§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* [ "^" ] ?* _ .o.
                 §oeoez3§ -> o // .#. \"^"* BackVowel \Vowel* "^" [ \"^" ]* _ ,,
                 §oeoez3§ -> a // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §oeoez3§ -> a // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleAccUeoe §oeoez23§ -> 0 // Vowelwithy %^ _  .o.
                 §oeoez23§ -> 0 //  Vowel AccSingle  %^ _ .o.
                 §oeoez23§ -> 0 //  Vowel AccSingle AccSingle  %^ _ .o.
                 §oeoez23§ -> 0 //  Vowel [ n y | s z | l y ]   %^ _ .o.
                 §oeoez23§ -> 0 //  Vowel [ n y | l y | s z | z s ] AccSingle  %^ _ .o.
                 §oeoez23§ -> 0 //  [ Nodupy ]  y  %^ _ .o.
                 §oeoez23§ -> 0 //  [ s z | z s ] %^ _ .o. # koszt
# if at least one additional affix befor the acc affix babot de babjaimat
                 §oeoez23§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* [ "^" ] ?* _ .o.
                 §oeoez23§ -> o // .#. \"^"* BackVowel \Vowel* "^" [ \"^" ]* _ ,,
# if at least one additional affix befor the acc affix tükröt tükröket
                 §oeoez23§ -> ü // .#. \"^"* FrontVowel \Vowel* "^" ?* [ "^" ] ?* _ .o.
                 §oeoez23§ -> ö // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleAccoaee §oeoez42§ -> 0 // Vowelwithy %^ _  .o.
#                 §oeoez42§ -> 0 //  Vowel AccSingle  %^ _ .o.
#                 §oeoez42§ -> 0 //  Vowel AccSingle AccSingle  %^ _ .o.
                 §oeoez42§ -> 0 //  Vowel [ n y | s z | l y ]   %^ _ .o.
#                 §oeoez42§ -> 0 //  Vowel [ n y | l y | s z | z s ] AccSingle  %^ _ .o.
                 §oeoez42§ -> 0 //  [ Nodupy ]  y  %^ _ .o.
                 §oeoez42§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §oeoez42§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §oeoez42§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRulePlur §oeoez1§ -> 0 // .#. \"^"* Vowelwithy %^ ?*  _  .o.
                 §oeoez1§ -> o // .#. \"^"* BackVowel \Vowel+ "^" ?*  _ ,,
                 §oeoez1§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel+ "^" ?* _ ,,
                 §oeoez1§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel+  "^" ?* _ ;
define HarmRulePlury §oeoez1y§ -> 0 // .#. \"^"* Vowelwithyy %^ ?*  _  .o.
                 §oeoez1y§ -> o // .#. \"^"* BackVowel \Vowel+ "^" ?*  _ ,,
                 §oeoez1y§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel+ "^" ?* _ ,,
                 §oeoez1y§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel+  "^" ?* _ ;
define HarmRulePlurmagas §oeoez1magas§ -> 0 // .#. \"^"* [ Vowel | Cons y] %^ ?*  _  .o.
                 §oeoez1magas§ -> e // .#. \"^"* BackVowel \Vowel+ "^" ?*  _ ,,
                 §oeoez1magas§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel+ "^" ?* _ ,,
                 §oeoez1magas§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel+  "^" ?* _ ;
define HarmRulePluroa §oeoez11§ -> 0 // .#. \"^"* Vowelwithy %^ ?*  _  .o.
                 §oeoez11§ -> a // .#. \"^"* BackVowel \Vowel+ "^" ?*  _ ,,
                 §oeoez11§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel+ "^" ?* _ ,,
                 §oeoez11§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel+  "^" ?* _ ;
define HarmRulePluroaoe §oeoez15§ -> 0 // .#. \"^"* Vowelwithy %^ ?*  _  .o.
                 §oeoez15§ -> a // .#. \"^"* BackVowel \Vowel+ "^" ?*  _ ,,
                 §oeoez15§ -> e // .#. \"^"* FrontUnroundedVowel \Vowel+ "^" ?* _ ,,
                 §oeoez15§ -> e // .#. \"^"* FrontRoundedVowel \Vowel+  "^" ?* _ ;
define HarmRulePlurUeoe §oeoez16§ -> 0 // .#. \"^"* Vowelwithy %^ ?*  _  .o.
                 §oeoez16§ -> o // .#. \"^"* BackVowel Cons+ "^" ?*  _ ,,
                 §oeoez16§ -> ö // .#. \"^"* FrontVowel Cons+ "^" ?* _ ;

define HarmRulePluroamely §oeoez21§ -> 0 // .#. \"^"* Vowelwithy %^ ?*  _  .o.
                 §oeoez21§ -> a // .#. \"^"* Vowel \Vowel+ "^" ?*  _ ;
define HarmRulePlurmely §oeoez17§ -> 0 // .#. \"^"* Vowelwithy %^ ?*  _  .o.
                 §oeoez17§ -> o // .#. \"^"* Vowel \Vowel+ "^" ?*  _ ;
define HarmRulePlurmely18 §oeoez18§ -> 0 // .#. \"^"* Vowelwithy %^ ?*  _  .o.
                 §oeoez18§ -> a // .#. \"^"* Vowel \Vowel+ "^" ?*  _ ;
define HarmRulePluroe §oeoez5§ -> 0 // .#. \"^"* Vowelwithy %^ ?*  _  .o.
                 §oeoez5§ -> o // .#. \"^"* BackVowel \Vowel+ "^" ?*  _ ,,
                 §oeoez5§ -> e // .#. \"^"* FrontUnroundedVowel \Vowel+ "^" ?* _ ,,
                 §oeoez5§ -> e // .#. \"^"* FrontRoundedVowel \Vowel+  "^" ?* _ ;
define HarmRulePluring §oeoez1ing§ -> 0 // .#. \"^"* Vowelwithy %^ ?*  _  .o.
                 §oeoez1ing§ -> o // .#. \"^"*  \Vowel+ "^" ?*  _ ,,
                 §oeoez1ing§ -> e // .#. \"^"*  \Vowel+ "^" ?* _ ;
define HarmRuleJfi §J1§ -> j || .#. \"^"*  %^ ?* _ ,,
                  §J1§ -> 0 || .#. \"^"*  %^ ?* _ ;
##########################################################
#  ja/e ae
# b,d,f: - ja/je
# g,k,l,m,n,p,r,t,v,  ny, gy, ty - ja/e és a/e
# c,h,j,s,z, sz,zs, cs - a/e
###########################################################

# sültje
define HarmRuleJ §J§ -> j || .#. \"^"* [ Vowelwithy | ConsJaje ] %^ ?* _ .o.
                 §J§ -> j || .#. \"^"* ConsAeJaje %^ ?* _ ,,
                 §J§ -> 0 || .#. \"^"* ConsAeJaje %^ ?* _ .o.
                 §J§ -> j || .#. \"^"* Cons %^ ?* _ .o.
                 §J§ -> 0 || .#. \"^"* ConsAe %^ ?* _ ;

define HarmRuleJy §Jy§ -> j || .#. \"^"* [ Vowelwithyy | ConsJaje ] %^ ?* _ .o.
                 §Jy§ -> j || .#. \"^"* ConsAeJaje %^ ?* _ ,,
                 §Jy§ -> 0 || .#. \"^"* ConsAeJaje %^ ?* _ .o.
                 §Jy§ -> 0 || .#. \"^"* ConsAe %^ ?* _ ;

define HarmRuleJJ    §J§ -> j || .#. \"^"* %^  ?* _ ;
define HarmRuleJJ1   §JJ§ -> j || .#. \"^"* %^  ?* _ ;
define HarmRuleJnull §J§ -> 0 || .#. \"^"* %^  ?* _ ;
define HarmRuleJnull1 §Jnull§ -> 0 || .#. \"^"* %^  ?* _ ;
define HarmRuleJmagas §Jmagas§ -> j || .#. \"^"* [ Vowel | ConsJaje | Cons y  ] %^ ?* _ .o. 
                 §Jmagas§ -> j || .#. \"^"* ConsAeJaje %^ ?* _ ,,
                 §Jmagas§ -> 0 || .#. \"^"* [ ConsAeJaje | ConsAe | Vowel y ] %^ ?* _ ;
define HarmRuletol §oooe§ -> ó // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §oooe§ -> ő // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuletolmagas §oooemagas§ -> ő // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §oooemagas§ -> ő // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuletolmely §oooe2§ -> ó // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §oooe2§ -> ó // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleul §uue§ -> u // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §uue§ -> ü // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleulmagas §uuemagas§ -> ü // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §uuemagas§ -> ü // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleulmely §uue2§ -> u // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §uue2§ -> u // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleAAA §AAA§ -> á // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                   §AAA§ -> é // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleAAAmagas §AAAmagas§ -> é // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                   §AAAmagas§ -> é // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleAAAmely §AAA2§ -> á // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                   §AAA2§ -> á // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleAA §AA§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                  §AA§ -> e // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleAAmely §AA2§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                  §AA2§ -> a // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleAAmagas §AAmagas§ -> e // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                  §AAmagas§ -> e // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleVVy §VVy§ -> v || Vowelwithyy %^  _ ,,
                  §VVy§ -> b || \b b %^ _ ,,
                  §VVy§ -> c || \c c %^ _ ,,
                  §VVy§ -> d || \d d %^ _ ,,
                  §VVy§ -> f || \f f %^ _ ,,
                  §VVy§ -> g || \g g %^ _ ,,
                  §VVy§ -> h || [ \h & \c ] h %^ _ ,,
                  §VVy§ -> j || \j j %^ _ ,,
                  §VVy§ -> k || \k k %^ _ ,,
                  §VVy§ -> l || \l l %^ _ ,,
                  §VVy§ -> m || \m m %^ _ ,,
                  §VVy§ -> n || \n n %^ _ ,,
                  §VVy§ -> p || \p p %^ _ ,,
                  §VVy§ -> q || \q q %^ _ ,,
                  §VVy§ -> r || \r r %^ _ ,,
                  §VVy§ -> s || [ \s & \c & \t & \z ] s %^ _ ,,
                  §VVy§ -> t || \t t %^ _ ,,
                  §VVy§ -> v || \v v %^ _ ,,
                  §VVy§ -> w || \w w %^ _ ,,
                  §VVy§ -> s z || \x x %^ _ ,,
                  §VVy§ -> 0 || [ b b | c c | d d | f f | g g | h h | j j | k k | l l | m m | n n | p p | q q | r r | s s | t t | v v | w w | x x | y y | z z ] %^ _ ,,
                  §VVy§ -> [ c s ] || [ Vowel t s | i c h | t s c h | ć | č ] %^ _ .o. # Damjanich Bartsch
                  §VVy§ ->  s || [ s c h ] %^ _ .o. # Damjanich Bartsch
                  §VVy§ -> [ h ] || e c h %^ _ .o.  # pech
                  §VVy§ -> 0 || [ c c s | g g y | l l y | n n y | t t y | s s z | z z s ] %^ _ .o.
                  §VVy§ -> %$ || \g g y %^ _ .o.
                  §VVy§ -> %$ || \l l y %^ _ .o.
                  §VVy§ -> %$ || \n n y %^ _ .o.
                  §VVy§ -> %$ || \t t y %^ _ .o.
                  §VVy§ -> %$ || \c c s %^ _ .o. # css-> ccs
                  §VVy§ -> %$ || \s s z %^ _ .o.
                  §VVy§ -> %$ || \z z s %^ _ .o.
                  §VVy§ -> s || \s s %^ _ .o.
                  §VVy§ -> v || \y y %^ _ .o.
                  §VVy§ -> z || [ \c & \z & \t ] z %^ _  .o.
                  §VVy§ -> c || [ t z | c z ] %^ _ .o. # tz-> tzc
                  y -> g  || g _ %^ %$ .o.
                  y -> l  || l _ %^ %$ .o.
                  y -> n  || n _ %^ %$ .o.
                  %$ -> y || [ g g | l l | n n ] %^ _ .o.
                  y -> t  || t _ %^ %$ .o.
                  %$ -> y || t t %^ _ .o.
                  s -> c  || c _ %^ %$ .o.  # cs$ -> cc$
                  %$ -> s || c c %^ _ .o.   # cc$ -> ccs
                  z -> s  || s _ %^ %$ .o.
                  %$ -> z || s s %^ _ .o.
                  s -> z  || z _ %^ %$ .o.
                  %$ -> s || z z %^ _ ;
define HarmRuleVVmagas §VVmagas§ -> v || Vowel %^  _ ,,
                  §VVmagas§ -> b || \b b %^ _ ,,
                  §VVmagas§ -> c || \c c %^ _ ,,
                  §VVmagas§ -> d || \d d %^ _ ,,
                  §VVmagas§ -> f || \f f %^ _ ,,
                  §VVmagas§ -> g || \g g %^ _ ,,
                  §VVmagas§ -> h || [ \h & \c ] h %^ _ ,,
                  §VVmagas§ -> j || \j j %^ _ ,,
                  §VVmagas§ -> k || \k k %^ _ ,,
                  §VVmagas§ -> l || \l l %^ _ ,,
                  §VVmagas§ -> m || \m m %^ _ ,,
                  §VVmagas§ -> n || \n n %^ _ ,,
                  §VVmagas§ -> p || \p p %^ _ ,,
                  §VVmagas§ -> q || \q q %^ _ ,,
                  §VVmagas§ -> r || \r r %^ _ ,,
                  §VVmagas§ -> s || [ \s & \c & \t & \z ] s %^ _ ,,
                  §VVmagas§ -> t || \t t %^ _ ,,
                  §VVmagas§ -> v || \v v %^ _ ,,
                  §VVmagas§ -> w || \w w %^ _ ,,
                  §VVmagas§ -> j || Vowel y %^ _ ,,
                  §VVmagas§ -> s z || \x x %^ _ ,,
                  §VVmagas§ -> 0 || [ b b | c c | d d | f f | g g | h h | j j | k k | l l | m m | n n | p p | q q | r r | s s | t t | v v | w w | x x | y y | z z ] %^ _ ,,
                  §VVmagas§ -> [ c s ] || [ Vowel t s | i c h | t s c h | ć | č ] %^ _ .o. # Damjanich Bartsch
                  §VVmagas§ ->  s || [ s c h ] %^ _ .o. # Damjanich Bartsch
                  §VVmagas§ -> [ h ] || e c h %^ _ .o.  # pech
                  §VVmagas§ -> 0 || [ c c s | g g y | l l y | n n y | t t y | s s z | z z s ] %^ _ .o.
                  §VVmagas§ -> %$ || \g g y %^ _ .o.
                  §VVmagas§ -> %$ || \l l y %^ _ .o.
                  §VVmagas§ -> %$ || \n n y %^ _ .o.
                  §VVmagas§ -> %$ || \t t y %^ _ .o.
                  §VVmagas§ -> %$ || \c c s %^ _ .o. # css-> ccs
                  §VVmagas§ -> %$ || \s s z %^ _ .o.
                  §VVmagas§ -> %$ || \z z s %^ _ .o.
                  §VVmagas§ -> s || \s s %^ _ .o.
                  §VVmagas§ -> v || \y y %^ _ .o.
                  §VVmagas§ -> z || [ \c & \z & \t ] z %^ _  .o.
                  §VVmagas§ -> c || [ t z | c z ] %^ _ .o. # tz-> tzc
                  y -> g  || g _ %^ %$ .o.
                  y -> l  || l _ %^ %$ .o.
                  y -> n  || n _ %^ %$ .o.
                  %$ -> y || [ g g | l l | n n ] %^ _ .o.
                  y -> t  || t _ %^ %$ .o.
                  %$ -> y || t t %^ _ .o.
                  s -> c  || c _ %^ %$ .o.  # cs$ -> cc$
                  %$ -> s || c c %^ _ .o.   # cc$ -> ccs
                  z -> s  || s _ %^ %$ .o.
                  %$ -> z || s s %^ _ .o.
                  s -> z  || z _ %^ %$ .o.
                  %$ -> s || z z %^ _ ;
define HarmRuleVV §VV§ -> v || Vowel %^  _ ,,
                  §VV§ -> b || \b b %^ _ ,,
                  §VV§ -> c || \c c %^ _ ,,
                  §VV§ -> d || \d d %^ _ ,,
                  §VV§ -> f || \f f %^ _ ,,
                  §VV§ -> g || \g g %^ _ ,,
                  §VV§ -> h || [ \h & \c ] h %^ _ ,,
                  §VV§ -> j || \j j %^ _ ,,
                  §VV§ -> k || \k k %^ _ ,,
                  §VV§ -> l || \l l %^ _ ,,
                  §VV§ -> m || \m m %^ _ ,,
                  §VV§ -> n || \n n %^ _ ,,
                  §VV§ -> p || \p p %^ _ ,,
                  §VV§ -> q || \q q %^ _ ,,
                  §VV§ -> r || \r r %^ _ ,,
                  §VV§ -> s || [ \s & \c & \t & \z ] s %^ _ ,,
                  §VV§ -> t || \t t %^ _ ,,
                  §VV§ -> v || \v v %^ _ ,,
                  §VV§ -> w || \w w %^ _ ,,
                  §VV§ -> s z || \x x %^ _ ,,
                  §VV§ -> 0 || [ b b | c c | d d | f f | g g | h h | j j | k k | l l | m m | n n | p p | q q | r r | s s | t t | v v | w w | x x | y y | z z ] %^ _ ,,
                  §VV§ -> [ c s ] || [ Vowel t s | i c h | t s c h | ć | č ] %^ _ .o. # Damjanich Bartsch
                  §VV§ ->  s || [ s c h ] %^ _ .o. # Damjanich Bartsch
                  §VV§ -> [ h ] || e c h %^ _ .o.  # pech
                  §VV§ -> 0 || [ c c s | g g y | l l y | n n y | t t y | s s z | z z s ] %^ _ .o.
                  §VV§ -> %$ || \g g y %^ _ .o.
                  §VV§ -> %$ || \l l y %^ _ .o.
                  §VV§ -> %$ || \n n y %^ _ .o.
                  §VV§ -> %$ || \t t y %^ _ .o.
                  §VV§ -> %$ || \c c s %^ _ .o. # css-> ccs
                  §VV§ -> %$ || \s s z %^ _ .o.
                  §VV§ -> %$ || \z z s %^ _ .o.
                  §VV§ -> s || \s s %^ _ .o.
                  §VV§ -> v || \y y %^ _ .o.
                  §VV§ -> z || [ \c & \z & \t ] z %^ _  .o.
                  §VV§ -> c || [ t z | c z ] %^ _ .o. # tz-> tzc
                  y -> g  || g _ %^ %$ .o.
                  y -> l  || l _ %^ %$ .o.
                  y -> n  || n _ %^ %$ .o.
                  %$ -> y || [ g g | l l | n n ] %^ _ .o.
                  y -> t  || t _ %^ %$ .o.
                  %$ -> y || t t %^ _ .o.
                  s -> c  || c _ %^ %$ .o.  # cs$ -> cc$
                  %$ -> s || c c %^ _ .o.   # cc$ -> ccs
                  z -> s  || s _ %^ %$ .o.
                  %$ -> z || s s %^ _ .o.
                  s -> z  || z _ %^ %$ .o.
                  %$ -> s || z z %^ _ ;
# falukéhoz falvakéhoz
define HarmRulehoz §oeoe§ -> o // .#. \"^"* BackVowel \Vowel* "^"  ?* _ .o.
                 §oeoe§ -> e //  Front1UnroundedVowel \Vowel* "^" \"^"* _ ,,
                 §oeoe§ -> ö //  Front1RoundedVowel \Vowel* "^" \"^"* _ ;
define HarmRulehozy §oeoey§ -> o // .#. \"^"* BackVowel \Vowel* "^" ?* _ .o.
                 §oeoey§ -> e //  Front1UnroundedVowel \Vowel* "^" \"^"* _ ,,
# at least one element at the end containing unrounded, at least one tag
                 §oeoey§ -> ö //  .#. \"^"* %^ ?* Front1RoundedVowel \Vowel* "^"  \"^"* _ .o.
                 §oeoey§ -> e //  Front1RoundedVowel \Vowel* "^" \"^"* _ ;
define HarmRulehozyy §oeoeyy§ -> 0 // .#. ?*  [ Vowel | y ]  "^" _ .o.
                 §oeoeyy§ -> o // .#. \"^"* BackVowel \Vowel* "^" ?* _ .o.
                 §oeoeyy§ -> e //  [ Front1UnroundedVowel | y ] \Vowel* "^" \"^"* _ ,,
# at least one element at the end containing unrounded, at least one tag
                 §oeoeyy§ -> ö //  .#. \"^"* %^ ?* Front1RoundedVowel \Vowel* "^"  \"^"* _ .o.
                 §oeoeyy§ -> e //  [ Front1RoundedVowel | y ] \Vowel* "^" \"^"* _ ;
define HarmRulehozmely §oeoe2§ -> o // .#. ?* "^" ?* _ ;
# at least one element at the end containing unrounded, at least one tag
define HarmRulehozmagas §oeoemagas§ -> ö // .#. \"^"* %^ ?* Front1RoundedVowel \Vowel* "^"  \"^"* _ .o.
                 §oeoemagas§ -> e // .#. \"^"* BackVowel \Vowel* "^" ?* _ .o.
                 §oeoemagas§ -> e //  Front1UnroundedVowel \Vowel* "^" \"^"* _ ,,
# at least one element at the end containing unrounded, at least one tag
                 §oeoemagas§ -> e //  Front1RoundedVowel \Vowel* "^" \"^"* _ ;
define HarmRuleonen §oeoez§ -> 0 //   Vowelwithy %^ _ .o.
# rácsaimen
                 §oeoez§ -> o // .#. \"^"* BackVowel Cons* "^" ?* _ .o.
# mécsünken
                 §oeoez§ -> ö //  Front1RoundedVowel Cons* "^" [ \%^* | Cons* %^ ] _ ,,
                 §oeoez§ -> e //  Front1UnroundedVowel Cons* "^"  [ \%^* | Cons* %^ ] _ ;
define HarmRuleoneny §oeoezy§ -> 0 //   Vowelwithyy %^ _ .o.
# rácsaimen
                 §oeoezy§ -> o // .#. \"^"* BackVowel Cons* "^" ?* _ .o.
# mécsünken
                 §oeoezy§ -> ö //  Front1RoundedVowel Cons* "^"  _ .o.
                 §oeoezy§ -> e //  Front1RoundedVowel Cons* "^" [ \%^* | Cons* %^ ] _ ,,
                 §oeoezy§ -> e //  Front1UnroundedVowel Cons* "^"  [ \%^* | Cons* %^ ] _ ;
define HarmRuleonenmely §oeoez25§ -> 0 //   Vowelwithy %^ _ .o.
                 §oeoez25§ -> o //   \Vowel %^ _ ;
define HarmRuleonenmagas §oeoezmagas§ -> 0 //  [ Vowel | Cons y ] %^ _ .o.
                 §oeoezmagas§ -> ö // .#. \"^"* %^ ?* Front1RoundedVowel \Vowel* "^" _ .o.
                 §oeoezmagas§ -> e //   \Vowel %^ _ ;
define HarmRuleonenoe §oeoez31§ -> 0 //   Vowelwithy %^ _ .o.
                 §oeoez31§ -> o // .#. \"^"* BackVowel \Vowel* "^"  _ ,,
                 §oeoez31§ -> o //  BackVowel \Vowel* "^"  _ ,,
                 §oeoez31§ -> e //  Front1UnroundedVowel \Vowel* "^"  _ ,,
                 §oeoez31§ -> ö //  Front1RoundedVowel \Vowel* "^" _ ;
define HarmRuleenkent §ooez3§ -> 0 // .#. \"^"* Vowelwithy %^ ?* _  .o.
                 §ooez3§ -> o // .#. \"^"* BackVowel \Vowel+ "^" ?* _ ,,
                 §ooez3§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel+ "^" ?* _ ,,
                 §ooez3§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel+  "^" ?* _ ;
define HarmRuleenkenty §ooez3y§ -> 0 // .#. \"^"* Vowelwithyy %^ ?* _  .o.
                 §ooez3y§ -> o // .#. \"^"* BackVowel \Vowel+ "^" ?* _ ,,
                 §ooez3y§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel+ "^" ?* _ ,,
                 §ooez3y§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel+  "^" ?* _ ;
define HarmRuleenkentmagas §ooez3magas§ -> 0 // .#. \"^"* Vowelwithy %^ ?* _  .o.
                 §ooez3magas§ -> e // .#. \"^"* BackVowel \Vowel+ "^" ?* _ ,,
                 §ooez3magas§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel+ "^" ?* _ ,,
                 §ooez3magas§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel+  "^" ?* _ ;
define HarmRuleenkentUeoe §ooez31§ -> 0 // .#. \"^"* Vowelwithy %^ ?* _  .o.
                 §ooez31§ -> o // .#. \"^"* BackVowel \Vowel+ "^" ?* _ ,,
                 §ooez31§ -> ö // .#. \"^"* FrontVowel \Vowel+ "^" ?* _ ;
define HarmRuleenkentmely §ooez18§ -> 0 // .#. \"^"* Vowel %^ ?* _  .o.
                 §ooez18§ -> o // .#. \"^"* BackVowel \Vowel+ "^" ?* _ ,,
                 §ooez18§ -> o // .#. \"^"* Front1UnroundedVowel \Vowel+ "^" ?* _ ,,
                 §ooez18§ -> o // .#. \"^"* Front1RoundedVowel \Vowel+  "^" ?* _ ;
define HarmRuleenkentmely19 §ooez19§ -> 0 // .#. \"^"* Vowel %^ ?* _  .o.
                 §ooez19§ -> a // .#. \"^"* BackVowel \Vowel+ "^" ?* _ ,,
                 §ooez19§ -> a // .#. \"^"* Front1UnroundedVowel \Vowel+ "^" ?* _ ,,
                 §ooez19§ -> a // .#. \"^"* Front1RoundedVowel \Vowel+  "^" ?* _ ;
define HarmRuleenkentoa §ooez13§ -> 0 // .#. \"^"* Vowelwithy %^ ?* _  .o.
                 §ooez13§ -> a // .#. \"^"* BackVowel \Vowel+ "^" ?* _ ,,
                 §ooez13§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel+ "^" ?* _ ,,
                 §ooez13§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel+  "^" ?* _ ;
define HarmRuleenkentoaoe §ooez23§ -> 0 // .#. \"^"* Vowelwithy %^ ?* _  .o.
                 §ooez23§ -> a // .#. \"^"* BackVowel \Vowel+ "^" ?* _ ,,
                 §ooez23§ -> e // .#. \"^"* FrontUnroundedVowel \Vowel+ "^" ?* _ ,,
                 §ooez23§ -> e // .#. \"^"* FrontRoundedVowel \Vowel+  "^" ?* _ ;
define HarmRuleenkentoamely §ooez23§ -> 0 // .#. \"^"* Vowelwithy %^ ?* _  .o.
                 §ooez23§ -> a // .#. \"^"* BackVowel \Vowel+ "^" ?* _ ,,
                 §ooez23§ -> a // .#. \"^"* Front1UnroundedVowel \Vowel+ "^" ?* _ ,,
                 §ooez23§ -> a // .#. \"^"* Front1RoundedVowel \Vowel+  "^" ?* _ ;
define HarmRuleenkentoe §ooez4§ -> 0 // .#. \"^"* Vowelwithy %^ ?* _  .o.
                 §ooez4§ -> o // .#. \"^"* BackVowel \Vowel+ "^" ?* _ ,,
                 §ooez4§ -> e // .#. \"^"* FrontUnroundedVowel \Vowel+ "^" ?* _ ,,
                 §ooez4§ -> e // .#. \"^"* FrontRoundedVowel \Vowel+  "^" ?* _ ;
define HarmRuleestul §EOA§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §EOA§ -> o // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §EOA§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §EOA§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleestuly §EOAy§ -> 0 // .#. \"^"* Vowelwithyy %^  ?* _  .o.
                 §EOAy§ -> o // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §EOAy§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §EOAy§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleestulmagas §EOAmagas§ -> 0 // .#. \"^"* [ Vowel | Cons y ] %^  ?* _  .o.
                 §EOAmagas§ -> e // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §EOAmagas§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §EOAmagas§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleestulmely §EOA17§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §EOA17§ -> o // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §EOA17§ -> o // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §EOA17§ -> o // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleestulmely18 §EOA18§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §EOA18§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §EOA18§ -> a // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §EOA18§ -> a // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleestuloa §EOA2§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §EOA2§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §EOA2§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §EOA2§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleestuloaoe §EOA12§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §EOA12§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §EOA12§ -> e // .#. \"^"* FrontUnroundedVowel \Vowel* "^" ?* _ ,,
                 §EOA12§ -> e // .#. \"^"* FrontRoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleestuloamely §EOA22§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §EOA22§ -> a // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §EOA22§ -> a // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §EOA22§ -> a // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleestuloe §EOA1§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §EOA1§ -> o // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §EOA1§ -> e // .#. \"^"* FrontUnroundedVowel \Vowel* "^" ?* _ ,,
                 §EOA1§ -> e // .#. \"^"* FrontRoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleestulUeoe §EOA13§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §EOA13§ -> o // .#. \"^"* BackVowel \Vowel* "^" ?* _ ,,
                 §EOA13§ -> ö // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleunk §UUE§ -> 0 // .#. \"^"* Vowelwithy %^ ?* _  .o.
                 §UUE§ -> u // .#. \"^"* BackVowel \Vowel+  "^" ?* _ ,,
                 §UUE§ -> ü // .#. \"^"* FrontVowel \Vowel+ "^" ?* _ ;
define HarmRuleunky §UUEy§ -> 0 // .#. \"^"* Vowelwithyy %^ ?* _  .o.
                 §UUEy§ -> u // .#. \"^"* BackVowel \Vowel+  "^" ?* _ ,,
                 §UUEy§ -> ü // .#. \"^"* FrontVowel \Vowel+ "^" ?* _ ;
define HarmRuleunkmagas §UUEmagas§ -> 0 // .#. \"^"* [ Vowel | Cons y ] %^ ?* _  .o.
                 §UUEmagas§ -> ü // .#. \"^"* BackVowel \Vowel+  "^" ?* _ ,,
                 §UUEmagas§ -> ü // .#. \"^"* FrontVowel \Vowel+ "^" ?* _ ;
define HarmRuleunkmely §UUE2§ -> 0 // .#. \"^"* Vowelwithy %^ ?* _  .o.
                 §UUE2§ -> u // .#. \"^"* BackVowel \Vowel+  "^" ?* _ ,,
                 §UUE2§ -> u // .#. \"^"* FrontVowel \Vowel+ "^" ?* _ ;
define HarmRuleunkmelytny §UUE3§ -> 0 // .#. \"^"* Vowelwithytny %^ ?* _  .o.
                 §UUE3§ -> u // .#. \"^"* BackVowel \Vowel+  "^" ?* _ ,,
                 §UUE3§ -> u // .#. \"^"* FrontVowel \Vowel+ "^" ?* _ ;
define HarmRuleotok1 §OEOE1§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §OEOE1§ -> o // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE1§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §OEOE1§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleotok1y §OEOE1y§ -> 0 // .#. \"^"* Vowelwithyy %^  ?* _  .o.
                 §OEOE1y§ -> o // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE1y§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §OEOE1y§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleotok1magas §OEOE1magas§ -> 0 // .#. \"^"* [ Vowel | Cons y ] %^  ?* _  .o.
                 §OEOE1magas§ -> e // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE1magas§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §OEOE1magas§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleotok1mely §OEOE17§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §OEOE17§ -> o // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE17§ -> o // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §OEOE17§ -> o // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleotok1mely18 §OEOE18§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §OEOE18§ -> a // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE18§ -> a // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §OEOE18§ -> a // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleotok1oa §OEOE11§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §OEOE11§ -> a // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE11§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §OEOE11§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleotok1oamely §OEOE21§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §OEOE21§ -> a // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE21§ -> a // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §OEOE21§ -> a // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
#define HarmRuleotok1oamelyfazek §OEOE21fazek§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
#                 §OEOE21fazek§ -> o // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
#                 §OEOE21fazek§ -> o // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
#                 §OEOE21fazek§ -> o // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleotok1oe §OEOE4§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §OEOE4§ -> o // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE4§ -> e // .#. \"^"* FrontUnroundedVowel \Vowel* "^" ?* _ ,,
                 §OEOE4§ -> e // .#. \"^"* FrontRoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleotok1oaoe §OEOE14§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §OEOE14§ -> a // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE14§ -> e // .#. \"^"* FrontUnroundedVowel \Vowel* "^" ?* _ ,,
                 §OEOE14§ -> e // .#. \"^"* FrontRoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleotok1Ueoe §OEOE12§ -> 0 // .#. \"^"* Vowelwithy %^  ?* _  .o.
                 §OEOE12§ -> o // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE12§ -> ö // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleotok2 §OEOE§ -> o // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §OEOE§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleotok2y §OEOEy§ -> o // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOEy§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §OEOEy§ -> e // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleotok2magas §OEOEmagas§ -> e // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOEmagas§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §OEOEmagas§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleotok2mely §OEOE25§ -> o // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE25§ -> o // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §OEOE25§ -> o // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleotok2oe §OEOE3§ -> o // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE3§ -> e // .#. \"^"* FrontUnroundedVowel \Vowel* "^" ?* _ ,,
                 §OEOE3§ -> e // .#. \"^"* FrontRoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleuk §UUE1§ -> u // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §UUE1§ -> ü // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleukmagas §UUE1magas§ -> ü // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §UUE1magas§ -> ü // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleukmely §UUE21§ -> u // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §UUE21§ -> u // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
# fii fiai fijai
define HarmRuleJPfi §JP1§ -> j || .#.  ?* _ ,,
                 §JP1§ -> 0 || .#.  ?* _ ;
##########################################################
#  ja/e ae
# b,d,f: - ja/je
# g,k,l,m,n,p,r,t,v,  ny, gy, ty - ja/e és a/e
# c,h,j,s,z, sz,zs, cs - a/e
###########################################################

# sültje
define HarmRuleJP §JP§ -> j || .#. \"^"* [ Vowel1withy | ConsJaje ] %^ ?* _ .o.
                 §JP§ -> j || .#. \"^"* ConsAeJaje %^ ?* _ ,,
                 §JP§ -> 0 || .#. \"^"* ConsAeJaje %^ ?* _ .o.
                 §JP§ -> j || .#. \"^"* Cons %^ ?* _ .o.
                 §JP§ -> 0 || .#. \"^"* [ ConsAe | Vowel1exc ]  %^ ?* _ ;
define HarmRuleJPy §JPy§ -> j || .#. \"^"* [ Vowelwithyy | ConsJaje ] %^ ?* _ .o.
                 §JPy§ -> j || .#. \"^"* ConsAeJaje %^ ?* _ ,,
                 §JPy§ -> 0 || .#. \"^"* ConsAeJaje %^ ?* _ .o.
                 §JPy§ -> 0 || .#. \"^"* [ ConsAe | Vowel1exc ]  %^ ?* _ ;
define HarmRuleJPJ §JP§ -> j || .#. \"^"*  %^  ?* _ ;
define HarmRuleJPJ1 §JPJ§ -> j || .#. \"^"*  %^  ?* _ ;
define HarmRuleJPnull §JP§ -> 0 || .#. \"^"*  %^  ?* _ ;
define HarmRuleJPnull1 §JPnull§ -> 0 || .#. \"^"*  %^  ?* _ ;
define HarmRuleJPmagas §JPmagas§ -> j || .#. \"^"* [ Vowel1 | ConsJaje | Cons y ] %^ ?* _ .o.
                 §JPmagas§ -> j || .#. \"^"* ConsAeJaje %^ ?* _ ,,
                 §JPmagas§ -> 0 || .#. \"^"* [ Vowel y | ConsAeJaje | ConsAe | Vowel1exc ] %^ ?* _ ;
define HarmRuleai §AE§ -> 0 || .#. \"^"* Vowelwithy %^ \j* _ .o.
                  §AE§ -> a // .#. \"^"* BackVowel Cons* %^ \%^* _ .o.
                  §AE§ -> e // .#. \"^"* FrontVowel Cons* %^ \%^* _ ;
define HarmRuleaiyi §AEyi§ -> 0 || .#. \"^"* Vowelwithyy %^ \%^* \j _ .o.
                  §AEyi§ -> e // .#. \"^"* FrontVowel Cons* %^ \%^* _ .o.
                  §AEyi§ -> a // .#. \"^"* BackVowel Cons* %^ \%^* _ ;
define HarmRuleaimagas §AEmagas§ -> 0 || .#. \"^"* Vowelwithy %^ ?* \j _ .o.
                  §AEmagas§ -> e // .#. \"^"* BackVowel Cons* "^" ?* _ ,,
                  §AEmagas§ -> e // .#. \"^"* FrontVowel Cons* "^" ?* _ ;
define HarmRuleaimely §AE22§ -> 0 || .#. \"^"* Vowel %^ \j* _ .o.
#bakelitaim barátaim cukkiniaim nem jó!
                 §AE22§ -> a // .#. \"^"* Vowel Cons+ "^" ?* j*  _ .o.  
#cukkinijaim  hajójaim           
                 §AE22§ -> a // .#. \"^"* [ ó | á | é | ő | ű | i | í ] "^" ?* j  _ ;
# fii fiai fijai
define HarmRuleaimelyfi §AE221§ -> a || .#. ?* j _ .o.
                 §AE221§ -> 0 // .#. ?* \j _ ;
define HarmRuleaitok2 §OEOE2§ -> o // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE2§ -> e // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleaitok2magas §OEOE2magas§ -> e // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE2magas§ -> e // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;
define HarmRuleaitok2mely §OEOE22§ -> o // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §OEOE22§ -> o // .#. \"^"* FrontVowel \Vowel* "^" ?* _ ;

define HarmRuleod §aeoenr§ -> o // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §aeoenr§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §aeoenr§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;
define HarmRuleszor §oeanr§ -> o // .#. \"^"* BackVowel \Vowel*  "^" ?* _ ,,
                 §oeanr§ -> e // .#. \"^"* Front1UnroundedVowel \Vowel* "^" ?* _ ,,
                 §oeanr§ -> ö // .#. \"^"* Front1RoundedVowel \Vowel*  "^" ?* _ ;

define Suffixb   §b§ -> 0 // b b [ %^ | 0 ] _ .o.
                 §b§ -> b // \[ b b ] [ %^ | 0 ] _ ;
define Suffixh   §h§ -> 0 // h h [ %^ | 0 ] _ .o.
                 §h§ -> h // \[ h h ] [ %^ | 0 ] _ ;
define Suffixk   §k§ -> 0 // k k [ %^ | 0 ] _ .o.
                 §k§ -> k // \[ k k ] [ %^ | 0 ] _ ;
define Suffixn   §n§ -> 0 // n n [ %^ | 0 ] _ .o.
                 §n§ -> n // \[ n n ] [ %^ | 0 ] _ ;
define Suffixr   §r§ -> 0 // r r [ %^ | 0 ] _ .o.
                 §r§ -> r // \[ r r ] [ %^ | 0 ] _ ;
define Suffixt   §t§ -> 0 // t t  [ %^ | 0 ] _ .o.
                 §t§ -> t // \[ t t ] [ %^ | 0 ]  _ ;

# Cleanup: remove morpheme boundaries
define Cleanup      "^"        -> 0;
define CleanupEndings  "^" "+" {cDis}  -> 0 ,,
                       "^" "+" {cEss}  -> 0 ,,
                       "^" "+" {cSoc}  -> 0 ,,
                       "^" "+" {cTmp}  -> 0 ,,
                       "^" "+" {cTem}  -> 0 ,,
                       "^" "+" {cPosss1p}  -> 0 ,,
                       "^" "+" {cPosss2p}  -> 0 ,,
                       "^" "+" {cPosss3p}  -> 0 ,,
                       "^" "+" {cPossp1p}  -> 0 ,,
                       "^" "+" {cPossp2p}  -> 0 ,,
                       "^" "+" {cPossp3p}  -> 0 ,,
                       "^" "+" {cPosss1s}  -> 0 ,,
                       "^" "+" {cPosss2s}  -> 0 ,,
                       "^" "+" {cPosss3s}  -> 0 ,,
                       "^" "+" {cPossp1s}  -> 0 ,,
                       "^" "+" {cPossp2s}  -> 0 ,,
                       "^" "+" {cPossp3s}  -> 0 ,,
                       "^" "+" {cPlur}  -> 0 ,,
                       "^" "+" {cFam}  -> 0 ,,
                       "^" "+" {cGenpl} -> 0 ,,
                       "^" "+" {cGens}  -> 0 ,,
                       "^" "+" {cAbl}  -> 0 ,,
                       "^" "+" {cAcc}  -> 0 ,,
                       "^" "+" {cAde}  -> 0 ,,
                       "^" "+" {cAll}  -> 0 ,,
                       "^" "+" {cCau}  -> 0 ,,
                       "^" "+" {cDat}  -> 0 ,,
                       "^" "+" {cDel}  -> 0 ,,
                       "^" "+" {cEla}  -> 0 ,,
                       "^" "+" {cFac}  -> 0 ,,
                       "^" "+" {cFor}  -> 0 ,,
                       "^" "+" {cIll}  -> 0 ,,
                       "^" "+" {cIne}  -> 0 ,,
                       "^" "+" {cIns}  -> 0 ,,
                       "^" "+" {cNom}  -> 0 ,,
                       "^" "+" {cPar}  -> 0 ,,
                       "^" "+" {cSeq}  -> 0 ,,
                       "^" "+" {cSub}  -> 0 ,,
                       "^" "+" {cSup}  -> 0 ,,
                       "^" "+" {cTer}  -> 0;

echo ">>> read in enhunum <<<"                   
read lexc /home/en/program/foma/tktest/lexc/num/enhunum1.lexc
define Lexiconnum

define Grammarnum Lexiconnum           .o.
               Etoee             .o.
               Atoaa             .o.
               Changez2          .o.
               HarmRulejaje      .o.
               CleanupEndings    .o.
               Suffixb           .o.
               Suffixh           .o.
               Suffixk           .o.
               Suffixn           .o.
               Suffixr           .o.
               Suffixt           .o.
               HarmRulePlur      .o.
               HarmRuleJ         .o.
               HarmRuleul        .o.
               HarmRuleuk        .o.
               HarmRuleenkent    .o.
               HarmRuleestul     .o.
               HarmRuleunk       .o.
               HarmRuleotok1     .o.
               HarmRuleotok2     .o.
               HarmRuleJP        .o.
               HarmRuleai        .o.
               HarmRuleaitok2    .o.
               HarmRuleAcc       .o.
               HarmRuleAcc1      .o.
               HarmRuletol       .o.
               HarmRuleAAA       .o.
               HarmRulehoz       .o.
               HarmRuleVV        .o.
               HarmRuleAA        .o.
               HarmRuleonen      .o.
               HarmRuleod        .o.
               HarmRuleszor      .o.
               Cleanup;


regex Grammarnum ;

Több fájl (lexc/foma pár) összekapcsolása[szerkesztés]

Ha több fájlt akarunk összekapcsolni, akkor az egyes foma fájlok végén írjuk be:

read regex Grammar2;
save stack filename.fst

Ez kiirja a transzduktort egy fájlba.

A transzduktor fájlok összefűzése az osszefuz.foma fájlban történik:

read regex @"huna1.fst" | @"huna2.fst" ;


Tesztelés:[szerkesztés]

foma -l osszefuz.foma

>lower-words
szó1
..
szón
>up
>szó1ragokkal
szó1+N+...
>szó2ragokkal
szó2+N+...
>ctrl-D
>down
>szó2+N+PL+Gen+...
szó2ragokkal
>szó1+N+PL+Gen+...
szó1ragokkal
> Ctrl-d