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

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

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