*SUPPORT*
IN: dax OUT: RED
IN: zup OUT: BLUE
IN: zup gazzer dax OUT: RED BLUE
IN: kiki tufa OUT: PINK PINK PINK PINK
IN: zup gazzer kiki OUT: PINK BLUE
IN: zup tufa OUT: BLUE BLUE BLUE BLUE
IN: dax wif lug OUT: PURPLE RED
IN: dax gazzer dax OUT: RED RED
IN: lug wif zup zup wif zup gazzer zup OUT: BLUE BLUE BLUE BLUE PURPLE
IN: lug tufa OUT: PURPLE PURPLE PURPLE PURPLE
IN: kiki kiki kiki gazzer kiki OUT: PINK PINK PINK PINK
IN: kiki wif dax OUT: RED PINK
IN: dax gazzer zup OUT: BLUE RED
IN: dax gazzer lug OUT: PURPLE RED

*QUERY*
IN: lug lug lug wif zup gazzer dax OUT: PURPLE PURPLE RED BLUE PURPLE
IN: zup wif lug tufa OUT: PURPLE PURPLE PURPLE PURPLE BLUE
IN: lug gazzer zup OUT: BLUE PURPLE
IN: zup wif zup tufa OUT: BLUE BLUE BLUE BLUE BLUE
IN: zup gazzer lug OUT: PURPLE BLUE
IN: lug wif zup gazzer dax OUT: RED BLUE PURPLE
IN: zup wif dax OUT: RED BLUE
IN: zup wif kiki wif dax tufa OUT: RED RED RED RED PINK BLUE
IN: lug lug wif lug tufa OUT: PURPLE PURPLE PURPLE PURPLE PURPLE PURPLE
IN: dax wif dax gazzer zup OUT: BLUE RED RED

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