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

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

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