*SUPPORT*
IN: kiki OUT: YELLOW
IN: dax gazzer kiki blicket OUT: RED YELLOW YELLOW
IN: wif blicket OUT: GREEN GREEN
IN: dax wif tufa gazzer tufa tufa blicket OUT: RED GREEN PURPLE PURPLE PURPLE PURPLE
IN: wif kiki OUT: GREEN YELLOW
IN: dax gazzer kiki OUT: RED YELLOW
IN: wif wif OUT: GREEN GREEN
IN: wif OUT: GREEN
IN: tufa blicket OUT: PURPLE PURPLE
IN: kiki kiki OUT: YELLOW YELLOW
IN: dax blicket OUT: RED RED
IN: dax OUT: RED
IN: tufa zup wif OUT: GREEN PURPLE GREEN
IN: kiki blicket OUT: YELLOW YELLOW

*QUERY*
IN: dax zup kiki OUT: YELLOW RED YELLOW
IN: kiki wif zup kiki gazzer tufa kiki OUT: YELLOW YELLOW GREEN YELLOW PURPLE YELLOW
IN: tufa dax zup kiki gazzer kiki zup kiki OUT: PURPLE YELLOW RED YELLOW YELLOW YELLOW YELLOW
IN: wif zup kiki OUT: YELLOW GREEN YELLOW
IN: tufa OUT: PURPLE
IN: kiki blicket gazzer kiki OUT: YELLOW YELLOW YELLOW
IN: tufa zup kiki OUT: YELLOW PURPLE YELLOW
IN: tufa kiki tufa zup tufa OUT: PURPLE YELLOW PURPLE PURPLE PURPLE
IN: kiki zup kiki OUT: YELLOW YELLOW YELLOW
IN: wif gazzer dax zup kiki gazzer wif OUT: GREEN YELLOW RED YELLOW GREEN

*GRAMMAR*
dax -> RED 
 kiki -> YELLOW 
 wif -> GREEN 
 tufa -> PURPLE 
 u1 blicket -> [u1] [u1] 
 x1 gazzer x2 -> [x1] [x2] 
 u1 zup u2 -> [u2] [u1] [u2] 
 u1 x1 -> [u1] [x1] 
 