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

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

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