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

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

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