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

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

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