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

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

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