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

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

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