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

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

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