*SUPPORT*
IN: dax dax fep wif OUT: GREEN BLUE BLUE
IN: blicket kiki fep gazzer OUT: PURPLE RED RED
IN: wif gazzer fep blicket OUT: RED GREEN PURPLE
IN: wif dax kiki OUT: GREEN BLUE GREEN BLUE
IN: wif blicket wif OUT: GREEN RED GREEN
IN: blicket kiki OUT: RED RED
IN: dax lug gazzer OUT: BLUE BLUE PURPLE
IN: blicket fep dax OUT: BLUE RED
IN: dax blicket kiki kiki OUT: BLUE RED BLUE RED BLUE RED BLUE RED
IN: gazzer wif OUT: PURPLE GREEN
IN: dax kiki OUT: BLUE BLUE
IN: dax OUT: BLUE
IN: blicket gazzer blicket blicket blicket fep dax OUT: BLUE RED PURPLE RED RED RED
IN: gazzer kiki fep blicket OUT: RED PURPLE PURPLE

*QUERY*
IN: gazzer OUT: PURPLE
IN: blicket OUT: RED
IN: wif wif OUT: GREEN GREEN
IN: blicket lug wif kiki OUT: RED RED GREEN RED RED GREEN
IN: wif lug dax kiki OUT: GREEN GREEN BLUE GREEN GREEN BLUE
IN: wif OUT: GREEN
IN: gazzer lug wif gazzer OUT: PURPLE PURPLE GREEN PURPLE
IN: dax gazzer kiki kiki OUT: BLUE PURPLE BLUE PURPLE BLUE PURPLE BLUE PURPLE
IN: dax lug blicket OUT: BLUE BLUE RED
IN: wif fep wif OUT: GREEN GREEN

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