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

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

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