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

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

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