*SUPPORT*
IN: blicket dax dax zup fep dax OUT: YELLOW YELLOW YELLOW YELLOW GREEN GREEN GREEN GREEN
IN: blicket lug dax dax OUT: GREEN BLUE GREEN BLUE GREEN BLUE GREEN BLUE
IN: fep fep dax OUT: YELLOW YELLOW YELLOW YELLOW
IN: lug kiki OUT: BLUE BLUE BLUE BLUE
IN: lug dax OUT: BLUE BLUE
IN: blicket OUT: GREEN
IN: blicket fep zup blicket dax OUT: GREEN GREEN GREEN GREEN GREEN YELLOW
IN: lug OUT: BLUE
IN: wif fep OUT: PURPLE YELLOW
IN: wif kiki dax OUT: PURPLE PURPLE PURPLE PURPLE PURPLE PURPLE PURPLE PURPLE
IN: wif OUT: PURPLE
IN: fep blicket OUT: YELLOW GREEN
IN: fep kiki OUT: YELLOW YELLOW YELLOW YELLOW
IN: fep OUT: YELLOW

*QUERY*
IN: lug dax kiki OUT: BLUE BLUE BLUE BLUE BLUE BLUE BLUE BLUE
IN: wif blicket OUT: PURPLE GREEN
IN: fep dax OUT: YELLOW YELLOW
IN: wif lug OUT: PURPLE BLUE
IN: wif kiki zup fep OUT: YELLOW YELLOW PURPLE PURPLE PURPLE PURPLE
IN: lug fep OUT: BLUE YELLOW
IN: lug lug dax OUT: BLUE BLUE BLUE BLUE
IN: lug zup wif OUT: PURPLE PURPLE BLUE
IN: blicket wif OUT: GREEN PURPLE
IN: wif dax OUT: PURPLE PURPLE

*GRAMMAR*
fep -> YELLOW 
 blicket -> GREEN 
 wif -> PURPLE 
 lug -> BLUE 
 x1 zup x2 -> [x2] [x2] [x1] 
 x1 dax -> [x1] [x1] 
 x1 kiki -> [x1] [x1] [x1] [x1] 
 u1 x1 -> [u1] [x1] 
 