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

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

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