*SUPPORT*
IN: fep blicket OUT: RED RED
IN: dax OUT: GREEN
IN: fep blicket wif gazzer gazzer OUT: BLUE BLUE RED RED
IN: zup fep wif gazzer kiki OUT: BLUE BLUE BLUE BLUE BLUE PINK RED
IN: dax blicket OUT: GREEN GREEN
IN: gazzer fep fep OUT: BLUE RED RED
IN: fep gazzer blicket OUT: RED BLUE RED BLUE
IN: fep dax blicket OUT: RED GREEN RED GREEN
IN: zup OUT: PINK
IN: dax fep blicket OUT: GREEN RED GREEN RED
IN: zup kiki OUT: PINK PINK PINK PINK PINK
IN: fep OUT: RED
IN: dax zup wif gazzer fep OUT: BLUE RED GREEN PINK
IN: zup dax blicket OUT: PINK GREEN PINK GREEN

*QUERY*
IN: dax kiki OUT: GREEN GREEN GREEN GREEN GREEN
IN: dax gazzer OUT: GREEN BLUE
IN: gazzer kiki OUT: BLUE BLUE BLUE BLUE BLUE
IN: gazzer OUT: BLUE
IN: dax dax OUT: GREEN GREEN
IN: dax fep fep OUT: GREEN RED RED
IN: gazzer blicket OUT: BLUE BLUE
IN: fep blicket blicket OUT: RED RED RED RED
IN: zup dax OUT: PINK GREEN
IN: zup blicket wif zup wif zup OUT: PINK PINK PINK PINK

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