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

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

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