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

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

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