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

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

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