*SUPPORT*
IN: blicket wif fep lug kiki lug dax OUT: RED YELLOW BLUE PURPLE
IN: kiki dax zup kiki wif fep zup blicket OUT: BLUE PURPLE BLUE BLUE YELLOW RED RED
IN: fep zup dax OUT: YELLOW PURPLE PURPLE
IN: blicket OUT: RED
IN: blicket wif fep zup fep OUT: RED YELLOW YELLOW YELLOW
IN: fep fep OUT: YELLOW YELLOW
IN: fep OUT: YELLOW
IN: kiki zup fep OUT: BLUE YELLOW YELLOW
IN: fep lug dax OUT: YELLOW PURPLE
IN: fep kiki kiki OUT: YELLOW BLUE BLUE
IN: dax zup kiki lug dax OUT: PURPLE BLUE BLUE PURPLE
IN: fep zup kiki OUT: YELLOW BLUE BLUE
IN: dax fep lug kiki lug blicket OUT: PURPLE YELLOW BLUE RED
IN: dax OUT: PURPLE

*QUERY*
IN: kiki blicket dax lug fep lug dax OUT: BLUE RED PURPLE YELLOW PURPLE
IN: kiki OUT: BLUE
IN: dax fep blicket zup dax lug dax OUT: PURPLE YELLOW RED PURPLE PURPLE PURPLE
IN: kiki zup kiki OUT: BLUE BLUE BLUE
IN: fep kiki OUT: YELLOW BLUE
IN: dax blicket OUT: PURPLE RED
IN: kiki zup dax OUT: BLUE PURPLE PURPLE
IN: dax lug blicket OUT: PURPLE RED
IN: dax kiki zup blicket lug blicket OUT: PURPLE BLUE RED RED RED
IN: dax zup blicket OUT: PURPLE RED RED

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