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

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

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