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

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

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