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

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

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