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

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

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