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

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

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