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

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

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