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

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

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