*SUPPORT*
IN: wif dax zup kiki OUT: YELLOW GREEN BLUE
IN: lug tufa wif gazzer gazzer OUT: YELLOW RED YELLOW RED YELLOW RED YELLOW RED
IN: lug lug tufa kiki OUT: RED GREEN RED
IN: dax dax dax tufa wif OUT: BLUE BLUE YELLOW BLUE
IN: wif zup dax tufa wif OUT: YELLOW BLUE YELLOW
IN: kiki zup wif OUT: YELLOW GREEN
IN: kiki kiki tufa dax gazzer OUT: GREEN BLUE GREEN GREEN BLUE GREEN
IN: lug OUT: RED
IN: kiki tufa lug OUT: RED GREEN
IN: dax OUT: BLUE
IN: kiki zup lug tufa wif OUT: YELLOW RED GREEN
IN: lug tufa lug OUT: RED RED
IN: kiki wif lug tufa dax OUT: GREEN YELLOW BLUE RED
IN: wif OUT: YELLOW

*QUERY*
IN: dax tufa dax OUT: BLUE BLUE
IN: kiki tufa kiki OUT: GREEN GREEN
IN: wif kiki gazzer gazzer OUT: YELLOW GREEN YELLOW GREEN YELLOW GREEN YELLOW GREEN
IN: dax zup lug OUT: RED BLUE
IN: kiki OUT: GREEN
IN: wif zup wif zup kiki gazzer OUT: GREEN YELLOW YELLOW GREEN YELLOW YELLOW
IN: dax zup kiki gazzer OUT: GREEN BLUE GREEN BLUE
IN: lug wif tufa wif gazzer OUT: RED YELLOW YELLOW RED YELLOW YELLOW
IN: wif wif wif tufa wif gazzer OUT: YELLOW YELLOW YELLOW YELLOW YELLOW YELLOW YELLOW YELLOW
IN: kiki tufa wif gazzer OUT: YELLOW GREEN YELLOW GREEN

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