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

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

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