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

*QUERY*
IN: dax gazzer fep OUT: GREEN PURPLE
IN: dax OUT: PURPLE
IN: dax gazzer dax OUT: PURPLE PURPLE
IN: fep wif gazzer dax OUT: PURPLE GREEN YELLOW
IN: fep OUT: GREEN
IN: wif fep gazzer fep gazzer wif OUT: YELLOW GREEN YELLOW GREEN
IN: wif OUT: YELLOW
IN: fep blicket OUT: GREEN BLUE
IN: dax blicket OUT: PURPLE BLUE
IN: dax wif dax OUT: PURPLE YELLOW PURPLE

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