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

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

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