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

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

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