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

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

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