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

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

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