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

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

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