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

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

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