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

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

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