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

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

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