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

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

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