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

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

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