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

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

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