*SUPPORT*
IN: wif dax blicket OUT: YELLOW BLUE BLUE YELLOW
IN: kiki dax kiki OUT: PINK PINK PINK PINK
IN: lug OUT: GREEN
IN: blicket dax lug OUT: GREEN YELLOW YELLOW GREEN
IN: wif zup tufa lug zup OUT: BLUE BLUE GREEN BLUE BLUE GREEN
IN: blicket OUT: YELLOW
IN: kiki dax blicket OUT: YELLOW PINK PINK YELLOW
IN: wif dax wif OUT: BLUE BLUE BLUE BLUE
IN: lug zup OUT: GREEN GREEN
IN: wif dax blicket zup OUT: YELLOW BLUE BLUE YELLOW YELLOW BLUE BLUE YELLOW
IN: blicket lug tufa kiki OUT: YELLOW GREEN PINK
IN: wif zup zup OUT: BLUE BLUE BLUE BLUE
IN: kiki wif zup tufa kiki dax wif OUT: PINK BLUE PINK BLUE BLUE PINK PINK BLUE
IN: kiki lug dax blicket OUT: PINK YELLOW GREEN GREEN YELLOW

*QUERY*
IN: wif dax lug OUT: GREEN BLUE BLUE GREEN
IN: blicket dax blicket OUT: YELLOW YELLOW YELLOW YELLOW
IN: wif blicket zup tufa wif dax kiki OUT: BLUE YELLOW BLUE YELLOW PINK BLUE BLUE PINK
IN: blicket zup OUT: YELLOW YELLOW
IN: kiki zup OUT: PINK PINK
IN: wif OUT: BLUE
IN: lug wif OUT: GREEN BLUE
IN: kiki OUT: PINK
IN: blicket dax kiki OUT: PINK YELLOW YELLOW PINK
IN: lug dax lug zup OUT: GREEN GREEN GREEN GREEN GREEN GREEN GREEN GREEN

*GRAMMAR*
blicket -> YELLOW 
 wif -> BLUE 
 lug -> GREEN 
 kiki -> PINK 
 u1 dax u2 -> [u2] [u1] [u1] [u2] 
 x1 zup -> [x1] [x1] 
 x1 tufa x2 -> [x1] [x2] 
 u1 x1 -> [u1] [x1] 
 