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

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

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