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

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

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