# fix homonym handling for German dictionary project,
# reported by Björn Jacke (sf.net Bug ID 1592880).
SET ISO8859-1

SFX N Y 1
SFX N 0 n .

SFX S Y 1
SFX S 0 s .

SFX P Y 1
SFX P 0 en .

SFX Q Y 2
SFX Q 0 e .
SFX Q 0 en .

COMPOUNDEND z
COMPOUNDPERMITFLAG c
ONLYINCOMPOUND o
