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

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

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