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

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

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