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

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

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