*SUPPORT*
IN: dax lug wif OUT: RED RED YELLOW RED
IN: wif lug dax OUT: YELLOW YELLOW RED YELLOW
IN: wif tufa lug tufa OUT: RED BLUE BLUE BLUE BLUE
IN: tufa OUT: BLUE
IN: tufa lug dax OUT: YELLOW YELLOW BLUE YELLOW
IN: tufa wif blicket OUT: BLUE RED RED
IN: tufa wif lug zup OUT: BLUE PINK PINK RED PINK
IN: wif blicket OUT: RED RED
IN: wif zup lug dax OUT: RED YELLOW YELLOW PINK YELLOW
IN: wif lug zup OUT: PINK PINK RED PINK
IN: tufa tufa lug tufa OUT: BLUE BLUE BLUE BLUE BLUE
IN: dax wif blicket OUT: YELLOW RED RED
IN: dax blicket OUT: YELLOW YELLOW
IN: zup OUT: PINK

*QUERY*
IN: tufa blicket OUT: BLUE BLUE
IN: zup lug wif OUT: RED RED PINK RED
IN: wif OUT: RED
IN: tufa lug zup OUT: PINK PINK BLUE PINK
IN: wif lug wif OUT: RED RED RED RED
IN: zup blicket OUT: PINK PINK
IN: dax wif wif lug tufa OUT: YELLOW RED BLUE BLUE RED BLUE
IN: tufa lug tufa OUT: BLUE BLUE BLUE BLUE
IN: wif dax lug zup OUT: RED PINK PINK YELLOW PINK
IN: wif wif OUT: RED RED

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