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

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

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