*SUPPORT*
IN: kiki OUT: RED
IN: blicket kiki OUT: GREEN RED
IN: wif OUT: YELLOW
IN: blicket OUT: GREEN
IN: blicket blicket OUT: GREEN GREEN
IN: blicket fep blicket gazzer kiki fep zup OUT: GREEN GREEN GREEN PURPLE PURPLE RED
IN: kiki fep wif OUT: YELLOW YELLOW RED
IN: zup fep blicket OUT: GREEN GREEN PURPLE
IN: kiki blicket OUT: RED GREEN
IN: kiki fep zup OUT: PURPLE PURPLE RED
IN: blicket fep blicket OUT: GREEN GREEN GREEN
IN: blicket gazzer kiki fep kiki dax OUT: GREEN RED RED RED GREEN RED RED RED
IN: wif kiki fep wif OUT: YELLOW YELLOW YELLOW RED
IN: wif fep zup OUT: PURPLE PURPLE YELLOW

*QUERY*
IN: wif wif fep zup OUT: YELLOW PURPLE PURPLE YELLOW
IN: blicket zup OUT: GREEN PURPLE
IN: zup fep wif OUT: YELLOW YELLOW PURPLE
IN: blicket fep wif dax OUT: YELLOW YELLOW GREEN YELLOW YELLOW GREEN
IN: wif fep blicket OUT: GREEN GREEN YELLOW
IN: kiki wif fep zup OUT: RED PURPLE PURPLE YELLOW
IN: zup blicket fep kiki dax OUT: PURPLE RED RED GREEN PURPLE RED RED GREEN
IN: blicket gazzer blicket gazzer zup kiki dax OUT: GREEN GREEN PURPLE RED GREEN GREEN PURPLE RED
IN: blicket fep kiki OUT: RED RED GREEN
IN: zup gazzer blicket dax gazzer kiki gazzer wif OUT: PURPLE GREEN PURPLE GREEN RED YELLOW

*GRAMMAR*
kiki -> RED 
 blicket -> GREEN 
 wif -> YELLOW 
 zup -> PURPLE 
 x1 dax -> [x1] [x1] 
 u1 fep u2 -> [u2] [u2] [u1] 
 x1 gazzer x2 -> [x1] [x2] 
 u1 x1 -> [u1] [x1] 
 