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

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

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