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

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

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