# aliases for flag vectors (AF) and morphological descriptions (AM)
# AB -> 1
# A -> 2
AF 2
AF AB
AF A

AM 3
AM is:affix_x
AM ds:affix_y
AM po:noun xx:other_data

SFX A Y 1
SFX A 0 x . 1

SFX B Y 1
SFX B 0 y/2 . 2
