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

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

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