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

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

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