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

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

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