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

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

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